{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "2.11.0\n"
     ]
    }
   ],
   "source": [
    "# TensorFlow and tf.keras\n",
    "import tensorflow as tf\n",
    "\n",
    "# Helper libraries\n",
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "print(tf.__version__)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [],
   "source": [
    "mnist = tf.keras.datasets.mnist\n",
    "(train_images, train_labels), (test_images, test_labels) = mnist.load_data()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[  0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,\n",
       "          0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,\n",
       "          0,   0],\n",
       "       [  0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,\n",
       "          0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,\n",
       "          0,   0],\n",
       "       [  0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,\n",
       "          0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,\n",
       "          0,   0],\n",
       "       [  0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,\n",
       "          0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,\n",
       "          0,   0],\n",
       "       [  0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,\n",
       "          0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,\n",
       "          0,   0],\n",
       "       [  0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,\n",
       "          0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,\n",
       "          0,   0],\n",
       "       [  0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,\n",
       "          0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,\n",
       "          0,   0],\n",
       "       [  0,   0,   0,   0,   0,   0,  84, 185, 159, 151,  60,  36,   0,\n",
       "          0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,\n",
       "          0,   0],\n",
       "       [  0,   0,   0,   0,   0,   0, 222, 254, 254, 254, 254, 241, 198,\n",
       "        198, 198, 198, 198, 198, 198, 198, 170,  52,   0,   0,   0,   0,\n",
       "          0,   0],\n",
       "       [  0,   0,   0,   0,   0,   0,  67, 114,  72, 114, 163, 227, 254,\n",
       "        225, 254, 254, 254, 250, 229, 254, 254, 140,   0,   0,   0,   0,\n",
       "          0,   0],\n",
       "       [  0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,  17,  66,\n",
       "         14,  67,  67,  67,  59,  21, 236, 254, 106,   0,   0,   0,   0,\n",
       "          0,   0],\n",
       "       [  0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,\n",
       "          0,   0,   0,   0,   0,  83, 253, 209,  18,   0,   0,   0,   0,\n",
       "          0,   0],\n",
       "       [  0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,\n",
       "          0,   0,   0,   0,  22, 233, 255,  83,   0,   0,   0,   0,   0,\n",
       "          0,   0],\n",
       "       [  0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,\n",
       "          0,   0,   0,   0, 129, 254, 238,  44,   0,   0,   0,   0,   0,\n",
       "          0,   0],\n",
       "       [  0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,\n",
       "          0,   0,   0,  59, 249, 254,  62,   0,   0,   0,   0,   0,   0,\n",
       "          0,   0],\n",
       "       [  0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,\n",
       "          0,   0,   0, 133, 254, 187,   5,   0,   0,   0,   0,   0,   0,\n",
       "          0,   0],\n",
       "       [  0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,\n",
       "          0,   0,   9, 205, 248,  58,   0,   0,   0,   0,   0,   0,   0,\n",
       "          0,   0],\n",
       "       [  0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,\n",
       "          0,   0, 126, 254, 182,   0,   0,   0,   0,   0,   0,   0,   0,\n",
       "          0,   0],\n",
       "       [  0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,\n",
       "          0,  75, 251, 240,  57,   0,   0,   0,   0,   0,   0,   0,   0,\n",
       "          0,   0],\n",
       "       [  0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,\n",
       "         19, 221, 254, 166,   0,   0,   0,   0,   0,   0,   0,   0,   0,\n",
       "          0,   0],\n",
       "       [  0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   3,\n",
       "        203, 254, 219,  35,   0,   0,   0,   0,   0,   0,   0,   0,   0,\n",
       "          0,   0],\n",
       "       [  0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,  38,\n",
       "        254, 254,  77,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,\n",
       "          0,   0],\n",
       "       [  0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,  31, 224,\n",
       "        254, 115,   1,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,\n",
       "          0,   0],\n",
       "       [  0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0, 133, 254,\n",
       "        254,  52,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,\n",
       "          0,   0],\n",
       "       [  0,   0,   0,   0,   0,   0,   0,   0,   0,   0,  61, 242, 254,\n",
       "        254,  52,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,\n",
       "          0,   0],\n",
       "       [  0,   0,   0,   0,   0,   0,   0,   0,   0,   0, 121, 254, 254,\n",
       "        219,  40,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,\n",
       "          0,   0],\n",
       "       [  0,   0,   0,   0,   0,   0,   0,   0,   0,   0, 121, 254, 207,\n",
       "         18,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,\n",
       "          0,   0],\n",
       "       [  0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,\n",
       "          0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,\n",
       "          0,   0]], dtype=uint8)"
      ]
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "test_images[0]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAfAAAAGdCAYAAADtxiFiAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjYuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/P9b71AAAACXBIWXMAAA9hAAAPYQGoP6dpAAAsXklEQVR4nO3df1DU973v8deisviDhbMaWKho0cQY469cY5AbY03kCphjY8L0RmM7mnF0YhfvUSY/ho5R8+MOrekkOckhOu2kkpxK0uScqhMnl9ZgxOMEbEOvY01SrjI04Ohiaw6g5AjIfu8f1G02YuTLd2H5uM/HzGeG/X6/n/2+d7v1nffn8/1+Py7LsiwBAACjxEU7AAAAYB8JHAAAA5HAAQAwEAkcAAADkcABADAQCRwAAAORwAEAMBAJHAAAAw2PdgBfFwwGdebMGSUmJsrlckU7HACATZZl6cKFC0pPT1dc3MDViZcuXVJnZ6fj94mPj1dCQkIEIhpcQy6BnzlzRhkZGdEOAwDgUFNTk8aPHz8g733p0iVlThyjwLlux+/l8/nU0NBgXBIfcgk8MTFRkjRfSzRcI6IcDQDArsvq0hG9H/r3fCB0dnYqcK5bDbUT5Unsf5XfdiGozDmfq7OzkwR+RWlpqV544QUFAgHNmjVLr776qu66667r9rsybD5cIzTcRQIHAOP8bYWNwZgG9STGOUrgJhuQT/2rX/1KRUVF2rp1q/7whz9o1qxZys3N1blz5wbidACAGNVtBR03O0pKSjR37lwlJiYqJSVFy5YtU11dXdgxCxculMvlCmuPPfZY2DGNjY26//77NWrUKKWkpOiJJ57Q5cuXbcUyIAn8xRdf1Nq1a/Xoo49q2rRp2rlzp0aNGqVf/OIXA3E6AECMCspy3OyoqqqS3+9XTU2NDhw4oK6uLi1evFjt7e1hx61du1Znz54Nte3bt4f2dXd36/7771dnZ6c++ugjvfHGGyorK9OWLVtsxRLxIfTOzk7V1taquLg4tC0uLk45OTmqrq6+6viOjg51dHSEXre1tUU6JADADSqooOzV0Ff3t6OioiLsdVlZmVJSUlRbW6sFCxaEto8aNUo+n6/X9/jtb3+rTz/9VB988IFSU1M1e/ZsPffcc3rqqae0bds2xcfH9ymWiFfgf/3rX9Xd3a3U1NSw7ampqQoEAlcdX1JSoqSkpFDjCnQAwGBra2sLa18tLL9Ja2urJMnr9YZt3717t8aNG6fp06eruLhYX375ZWhfdXW1ZsyYEZYnc3Nz1dbWpk8++aTPMUd95r+4uFitra2h1tTUFO2QAACG6LYsx02SMjIyworJkpKS6547GAxq48aNuvvuuzV9+vTQ9kceeUS//OUv9eGHH6q4uFj/+q//qu9///uh/YFAoNci98q+vor4EPq4ceM0bNgwNTc3h21vbm7udTjB7XbL7XZHOgwAQAzozzz21/tLPfesezye0Pa+5CW/368TJ07oyJEjYdvXrVsX+nvGjBlKS0vTokWLVF9fr8mTJ/c71q+LeAUeHx+vOXPmqLKyMrQtGAyqsrJS2dnZkT4dAACOeTyesHa9BF5YWKj9+/frww8/vO7DarKysiRJp06dktTz4Jjeitwr+/pqQIbQi4qK9POf/1xvvPGGPvvsM61fv17t7e169NFHB+J0AIAYFZSlbgfNbvVuWZYKCwu1Z88eHTx4UJmZmdftc+zYMUlSWlqaJCk7O1t//OMfw26tPnDggDwej6ZNm9bnWAbkQS4PP/yw/vKXv2jLli0KBAKaPXu2KioqrhrzBwDAiUgNofeV3+9XeXm59u3bp8TExNCcdVJSkkaOHKn6+nqVl5dryZIlGjt2rI4fP65NmzZpwYIFmjlzpiRp8eLFmjZtmn7wgx9o+/btCgQC2rx5s/x+v60pZZdlWf3/5AOgra1NSUlJWqgHeBIbABjostWlQ9qn1tbWsHnlSLqSK+r/5FOigyexXbgQ1OSpgT7Heq2ny+3atUurV69WU1OTvv/97+vEiRNqb29XRkaGHnzwQW3evDns/T///HOtX79ehw4d0ujRo7Vq1Sr9+Mc/1vDhfa+rh9yz0AEA6KuvXkne3/52XK/mzcjIUFVV1XXfZ+LEiXr//fdtnfvrSOAAAGMF/9ac9DdV1O8DBwAA9lGBAwCMdeVqcif9TUUCBwAYq9vqaU76m4oEDgAwFnPgAADAKFTgAABjBeVSt3q/N7uv/U1FAgcAGCto9TQn/U3FEDoAAAaiAgcAGKvb4RC6k77RRgIHABgrlhM4Q+gAABiIChwAYKyg5VLQcnAVuoO+0UYCBwAYiyF0AABgFCpwAICxuhWnbge1aHcEYxlsJHAAgLEsh3PgFnPgAAAMPubAAQCAUajAAQDG6rbi1G05mAM3+FnoJHAAgLGCcinoYDA5KHMzOEPoAAAYiAocAGCsWL6IjQQOADCW8zlwhtABAMAgogIHABir5yI2B4uZMIQOAMDgCzp8lCpXoQMAgEFFBQ4AMFYsX8RGAgcAGCuouJh9kAsJHABgrG7LpW4HK4o56RttzIEDAGAgKnAAgLG6HV6F3s0QOgAAgy9oxSno4CK2oMEXsTGEDgCAgajAAQDGYggdAAADBeXsSvJg5EIZdAyhAwBgICpwAICxnD/Ixdw6lgQOADCW80epmpvAzY0cAIAYRgUOADAW64EDAGCgWB5CJ4EDAIzl/D5wcxO4uZEDABDDqMABAMYKWi4FnTzIxeDlREngAABjBR0OoZt8H7i5kQMAEMOowAEAxnK+nKi5dSwJHABgrG651O3gXm4nfaPN3P/0AAAghlGBA4iI+heybff57JF/sd1nhGuY7T4LfrjOdh9JGrn3d/3qh8HDEDoAAAbqlrNh8O7IhTLozP1PDwAAYljEE/i2bdvkcrnC2tSpUyN9GgAAQkPoTpqpBmQI/fbbb9cHH3zw95MMZ6QeABB5LGYS6TcdPlw+n28g3hoAgBDL4XKiFreRhTt58qTS09M1adIkrVy5Uo2Njdc8tqOjQ21tbWENAAB8s4gn8KysLJWVlamiokI7duxQQ0OD7rnnHl24cKHX40tKSpSUlBRqGRkZkQ4JAHCDujKE7qSZKuKR5+fn63vf+55mzpyp3Nxcvf/++2ppadE777zT6/HFxcVqbW0NtaampkiHBAC4QV1ZjcxJM9WAX12WnJysKVOm6NSpU73ud7vdcrvdAx0GAAA3lAEfO7h48aLq6+uVlpY20KcCAMSY7r8tJ+qk2VFSUqK5c+cqMTFRKSkpWrZsmerq6sKOuXTpkvx+v8aOHasxY8aooKBAzc3NYcc0Njbq/vvv16hRo5SSkqInnnhCly9fthVLxBP4448/rqqqKv35z3/WRx99pAcffFDDhg3TihUrIn0qAECMG+wh9KqqKvn9ftXU1OjAgQPq6urS4sWL1d7eHjpm06ZNeu+99/Tuu++qqqpKZ86c0UMPPRTa393drfvvv1+dnZ366KOP9MYbb6isrExbtmyxFUvEh9BPnz6tFStW6Pz587rppps0f/581dTU6Kabbor0qQAAGFQVFRVhr8vKypSSkqLa2lotWLBAra2tev3111VeXq777rtPkrRr1y7ddtttqqmp0bx58/Tb3/5Wn376qT744AOlpqZq9uzZeu655/TUU09p27Ztio+P71MsEU/gb7/9dqTfEsAgC2z677b7HHp4u+0+XVbf/qFyzBqc02DwBRWnoIPB5Ct9v34Lc1+vz2ptbZUkeb1eSVJtba26urqUk5MTOmbq1KmaMGGCqqurNW/ePFVXV2vGjBlKTU0NHZObm6v169frk08+0R133NGn2M29fh4AEPO6LZfjJkkZGRlhtzSXlJRc99zBYFAbN27U3XffrenTp0uSAoGA4uPjlZycHHZsamqqAoFA6JivJu8r+6/s6yuecQoAiHlNTU3yeDyh132pvv1+v06cOKEjR44MZGjXRAIHABjL6b3cV/p6PJ6wBH49hYWF2r9/vw4fPqzx48eHtvt8PnV2dqqlpSWsCm9ubg49Ytzn8+l3vwtfa/7KVep2HkPOEDoAwFiWw5XILJtPYrMsS4WFhdqzZ48OHjyozMzMsP1z5szRiBEjVFlZGdpWV1enxsZGZWdnS5Kys7P1xz/+UefOnQsdc+DAAXk8Hk2bNq3PsVCBAwCM1S2Xuh0sSGK3r9/vV3l5ufbt26fExMTQnHVSUpJGjhyppKQkrVmzRkVFRfJ6vfJ4PNqwYYOys7M1b948SdLixYs1bdo0/eAHP9D27dsVCAS0efNm+f1+Ww82I4EDANBHO3bskCQtXLgwbPuuXbu0evVqSdJLL72kuLg4FRQUqKOjQ7m5uXrttddCxw4bNkz79+/X+vXrlZ2drdGjR2vVqlV69tlnbcVCAgcAGCtoyeEcuL3jLev6HRISElRaWqrS0tJrHjNx4kS9//779k7+NSRwAICxrsxlO+lvKnMjBwAghlGBAwCMFZRLQQcXsTnpG20kcACAsb76NLX+9jcVQ+gAABiIChzAVS5mBG338cYN0sIkwFfE8kVsJHAAgLGCcvgoVYPnwM39Tw8AAGIYFTgAwFiWw6vQLYMrcBI4AMBYkVqNzEQkcACAsWL5IjZzIwcAIIZRgQMAjMUQOgAABorlR6kyhA4AgIGowAEAxmIIHQAAA8VyAmcIHQAAA1GBAwCMFcsVOAkcuIFd/F5Wv/r9+4P/3I9e9v8h3Nky1XafD/7nnbb7jP78E9t9JMn+mmwYbLGcwBlCBwDAQFTgAABjWXJ2L7cVuVAGHQkcAGCsWB5CJ4EDAIwVywmcOXAAAAxEBQ4AMFYsV+AkcACAsWI5gTOEDgCAgajAAQDGsiyXLAdVtJO+0UYCBwAYi/XAAQCAUajAAQDGiuWL2EjggCEu/eNdtvtsLflFv841ZcTg/KP2xs/zbPfxffrRAEQCU8XyHDhD6AAAGIgKHABgLIbQAQAwUCwPoZPAAQDGshxW4CYncObAAQAwEBU4AMBYliTLctbfVCRwAICxgnLJxZPYAACAKajAAQDG4ip0AAAMFLRccsXofeAMoQMAYCAqcACAsSzL4VXoBl+GTgIHDHH2+5ds97l3pP0+PYbZ7rHqzzm2+/j+mYVJ4Ewsz4EzhA4AgIGowAEAxqICt+Hw4cNaunSp0tPT5XK5tHfv3rD9lmVpy5YtSktL08iRI5WTk6OTJ09GKl4AAEKurEbmpJnKdgJvb2/XrFmzVFpa2uv+7du365VXXtHOnTt19OhRjR49Wrm5ubp0qb9zcQAA9O7KRWxOmqlsD6Hn5+crPz+/132WZenll1/W5s2b9cADD0iS3nzzTaWmpmrv3r1avny5s2gBAICkCF/E1tDQoEAgoJycv1+NmpSUpKysLFVXV/fap6OjQ21tbWENAIC+6KmiXQ5atD9B/0U0gQcCAUlSampq2PbU1NTQvq8rKSlRUlJSqGVkZEQyJADADcxZ8nZ2AVy0Rf02suLiYrW2toZaU1NTtEMCAGDIi+htZD6fT5LU3NystLS00Pbm5mbNnj271z5ut1tutzuSYQAAYoQlZ2t6GzyCHtkKPDMzUz6fT5WVlaFtbW1tOnr0qLKzsyN5KgAAYnoI3XYFfvHiRZ06dSr0uqGhQceOHZPX69WECRO0ceNGPf/887rllluUmZmpp59+Wunp6Vq2bFkk4wYAIKbZTuAff/yx7r333tDroqIiSdKqVatUVlamJ598Uu3t7Vq3bp1aWlo0f/58VVRUKCEhIXJRAwAgxfQYuu0EvnDhQlnfcN29y+XSs88+q2effdZRYMCNbPj4b9nu88k9u2z36bK6bfeRpM+67PdpfHGK7T6jddT+iYCvcjoMHktD6AAADBWxvJxo1G8jAwAA9lGBAwCMxWpkAACYyHI5bzZdb1XO1atXy+VyhbW8vLywY7744gutXLlSHo9HycnJWrNmjS5evGgrDhI4AAA2XG9VTknKy8vT2bNnQ+2tt94K279y5Up98sknOnDggPbv36/Dhw9r3bp1tuJgCB0AYKxoXMT2TatyXuF2u0NPJ/26zz77TBUVFfr973+vO++8U5L06quvasmSJfrpT3+q9PT0PsVBBQ4AMJcVgSZdtSpmR0eHo7AOHTqklJQU3XrrrVq/fr3Onz8f2lddXa3k5ORQ8paknJwcxcXF6ejRvt9aSQIHAMS8jIyMsJUxS0pK+v1eeXl5evPNN1VZWamf/OQnqqqqUn5+vrq7e57LEAgElJKSEtZn+PDh8nq911y5szcMoQMAjBWpq9Cbmprk8XhC250ssrV8+fLQ3zNmzNDMmTM1efJkHTp0SIsWLer3+34dFTgAwGwOh88lyePxhLVIrpI5adIkjRs3LrSOiM/n07lz58KOuXz5sr744otrzpv3hgQOAMAAOn36tM6fPx9aZjs7O1stLS2qra0NHXPw4EEFg0FlZWX1+X0ZQgcAGCsaD3L5plU5vV6vnnnmGRUUFMjn86m+vl5PPvmkbr75ZuXm5kqSbrvtNuXl5Wnt2rXauXOnurq6VFhYqOXLl/f5CnSJChwAYLIIXYVux8cff6w77rhDd9xxh6SeVTnvuOMObdmyRcOGDdPx48f13e9+V1OmTNGaNWs0Z84c/cd//EfYsPzu3bs1depULVq0SEuWLNH8+fP1s5/9zFYcVOCAQ8Nuv9V2nzvLTwxAJJHz8K//l+0+k/+9ZgAiAa7H9bfmpL8911uV8ze/+c1138Pr9aq8vNz2ub+KChwAAANRgQMAzNXPYfCw/oYigQMAzBXDCZwhdAAADEQFDgAwVz+XBA3rbygSOADAWNFYjWyoYAgdAAADUYEDAMwVwxexkcABAOaK4TlwhtABADAQFTgAwFguq6c56W8qEjgAwFzMgQPor8+/O9Z2n38b+3/7caZhtns8Ur+0H+eRpvy43naf7n6dCXCIOXAAAGASKnAAgLkYQgcAwEAxnMAZQgcAwEBU4AAAc8VwBU4CBwCYi6vQAQCASajAAQDG4klsAACYKIbnwBlCBwDAQCRwAAAMxBA6AMBYLjmcA49YJIOPBA58xRePZtvus+exF/pxphG2ezzW9B3bfbpWuW33kaTuvzT2qx8w6LiNDAAAmIQKHABgrhi+Cp0EDgAwVwwncIbQAQAwEBU4AMBYPIkNAAATMYQOAABMQgUOADBXDFfgJHAAgLFieQ6cIXQAAAxEBQ4AMFcMP0qVBA4AMBdz4MCNZdjtt/ar30fP/0s/eiX061x2VZ/+tu0+GX8+EflAgCGEOXAAAGAUKnAAgLlieAjddgV++PBhLV26VOnp6XK5XNq7d2/Y/tWrV8vlcoW1vLy8SMULAMDfWX8fRu9Pi6kE3t7erlmzZqm0tPSax+Tl5ens2bOh9tZbbzkKEgAAhLM9hJ6fn6/8/PxvPMbtdsvn8/U7KAAA+oQh9Mg6dOiQUlJSdOutt2r9+vU6f/78NY/t6OhQW1tbWAMAoE+sCDRDRTyB5+Xl6c0331RlZaV+8pOfqKqqSvn5+eru7u71+JKSEiUlJYVaRkZGpEMCAOCGE/Gr0JcvXx76e8aMGZo5c6YmT56sQ4cOadGiRVcdX1xcrKKiotDrtrY2kjgAoE+4D3wATZo0SePGjdOpU6d63e92u+XxeMIaAAD4ZgOewE+fPq3z588rLS1toE8FAEDMsD2EfvHixbBquqGhQceOHZPX65XX69UzzzyjgoIC+Xw+1dfX68knn9TNN9+s3NzciAYOAEAsX4VuO4F//PHHuvfee0Ovr8xfr1q1Sjt27NDx48f1xhtvqKWlRenp6Vq8eLGee+45ud3uyEUNAIBiew7cdgJfuHChLOvan/g3v/mNo4CASPh/PxrVr35dVu93SwwFE35sv4/B/zYBfRejP3QWMwEAwEAsZgIAMBdz4AAAmCeW58AZQgcAwEBU4AAAczGEDgCAeRhCBwAARqECBwCYiyF0AAAMFMMJnCF0AABsOHz4sJYuXar09HS5XC7t3bs3bL9lWdqyZYvS0tI0cuRI5eTk6OTJk2HHfPHFF1q5cqU8Ho+Sk5O1Zs0aXbx40VYcJHAAgLGuXMTmpNnV3t6uWbNmqbS0tNf927dv1yuvvKKdO3fq6NGjGj16tHJzc3Xp0qXQMStXrtQnn3yiAwcOaP/+/Tp8+LDWrVtnKw6G0AEA5orCEHp+fr7y8/N7fzvL0ssvv6zNmzfrgQcekCS9+eabSk1N1d69e7V8+XJ99tlnqqio0O9//3vdeeedkqRXX31VS5Ys0U9/+lOlp6f3KQ4qcACAuawINEltbW1hraOjo1/hNDQ0KBAIKCcnJ7QtKSlJWVlZqq6uliRVV1crOTk5lLwlKScnR3FxcTp69Gifz0UFjiEv+J07bPd5/s69kQ8kgv7HieW2+4z5+MQARAJAkjIyMsJeb926Vdu2bbP9PoFAQJKUmpoatj01NTW0LxAIKCUlJWz/8OHD5fV6Q8f0BQkcAGCsSD3IpampSR6PJ7Td7XY7jGzgMYQOADBXhIbQPR5PWOtvAvf5fJKk5ubmsO3Nzc2hfT6fT+fOnQvbf/nyZX3xxRehY/qCBA4AQIRkZmbK5/OpsrIytK2trU1Hjx5Vdna2JCk7O1stLS2qra0NHXPw4EEFg0FlZWX1+VwMoQMAjBWNZ6FfvHhRp06dCr1uaGjQsWPH5PV6NWHCBG3cuFHPP/+8brnlFmVmZurpp59Wenq6li1bJkm67bbblJeXp7Vr12rnzp3q6upSYWGhli9f3ucr0CUSOADAZFG4jezjjz/WvffeG3pdVFQkSVq1apXKysr05JNPqr29XevWrVNLS4vmz5+viooKJSQkhPrs3r1bhYWFWrRokeLi4lRQUKBXXnnFVhwkcAAAbFi4cKEs69qZ3+Vy6dlnn9Wzzz57zWO8Xq/Ky8sdxUECBwCYK4afhU4CBwAYy/W35qS/qbgKHQAAA1GBAwDMxRA6AADmicZtZEMFCRwAYC4qcGDo+t9lP7PdZ/qIwft/5eNnF9juk7TiP2336bbdA8CNjAQOADCbwVW0EyRwAICxYnkOnNvIAAAwEBU4AMBcXMQGAIB5GEIHAABGoQIHAJiLIXQAAMzDEDoAADAKFTgAwFwMoQMAYCASOAAA5onlOXASOIa8O+LtX6rRZQ3e0h/Vu/6b7T4p//nRAEQCIJaQwAEA5mIIHQAA87gsSy6r/1nYSd9o4zYyAAAMRAUOADAXQ+gAAJgnlq9CZwgdAAADUYEDAMzFEDoAAOZhCB0AABiFChwAYC6G0AEAME8sD6GTwAEA5qICBwZH079Nt91nhOtY5AOJoLRDf7XdZ/CWWgFwoyKBAwCMZvIwuBMkcACAuSyrpznpbyhbt5GVlJRo7ty5SkxMVEpKipYtW6a6urqwYy5duiS/36+xY8dqzJgxKigoUHNzc0SDBgAg1tlK4FVVVfL7/aqpqdGBAwfU1dWlxYsXq729PXTMpk2b9N577+ndd99VVVWVzpw5o4ceeijigQMAcOUqdCfNVLaG0CsqKsJel5WVKSUlRbW1tVqwYIFaW1v1+uuvq7y8XPfdd58kadeuXbrttttUU1OjefPmRS5yAABi+Cp0R09ia21tlSR5vV5JUm1trbq6upSTkxM6ZurUqZowYYKqq6t7fY+Ojg61tbWFNQAA8M36ncCDwaA2btyou+++W9On99waFAgEFB8fr+Tk5LBjU1NTFQgEen2fkpISJSUlhVpGRkZ/QwIAxBhX0HkzVb8TuN/v14kTJ/T22287CqC4uFitra2h1tTU5Oj9AAAxxIpAM1S/biMrLCzU/v37dfjwYY0fPz603efzqbOzUy0tLWFVeHNzs3w+X6/v5Xa75Xa7+xMGAAAxy1YFblmWCgsLtWfPHh08eFCZmZlh++fMmaMRI0aosrIytK2urk6NjY3Kzs6OTMQAAPwNV6H3kd/vV3l5ufbt26fExMTQvHZSUpJGjhyppKQkrVmzRkVFRfJ6vfJ4PNqwYYOys7O5Ah0AEHkx/CAXWwl8x44dkqSFCxeGbd+1a5dWr14tSXrppZcUFxengoICdXR0KDc3V6+99lpEggUA4KtYjayPrD78l0pCQoJKS0tVWlra76BghuB37rDd5+XZv7Tdp8uyv/RHa/CS7T6SNPf/bLTdZ+rnn/brXADgBM9CBwCYK4Yf5EICBwAYK5aH0B09iQ0AAEQHFTgAwFxchQ4AgHkYQgcAAEahAgcAmIur0AEAMA9D6AAAwChU4AAAcwWtnuakv6FI4AAAczEHDgCAeVxyOAcesUgGH3PgAAAYiAoc/XbJG2+7z/yE9n6caZjtHr/5ckI/ziNNWfd7232C/ToTgIjgSWwAAJiH28gAAIBRSOAAAHNZEWg2bNu2TS6XK6xNnTo1tP/SpUvy+/0aO3asxowZo4KCAjU3Nzv8kL0jgQMAjOWyLMfNrttvv11nz54NtSNHjoT2bdq0Se+9957effddVVVV6cyZM3rooYci+ZFDmAMHAMCG4cOHy+fzXbW9tbVVr7/+usrLy3XfffdJknbt2qXbbrtNNTU1mjdvXkTjoAIHAJgrGIEmqa2tLax1dHRc85QnT55Uenq6Jk2apJUrV6qxsVGSVFtbq66uLuXk5ISOnTp1qiZMmKDq6uqIfmyJBA4AMFikhtAzMjKUlJQUaiUlJb2eLysrS2VlZaqoqNCOHTvU0NCge+65RxcuXFAgEFB8fLySk5PD+qSmpioQCET8szOEDgCIeU1NTfJ4PKHXbre71+Py8/NDf8+cOVNZWVmaOHGi3nnnHY0cOXLA4/wqKnAAgLkidBW6x+MJa9dK4F+XnJysKVOm6NSpU/L5fOrs7FRLS0vYMc3Nzb3OmTtFAgcAmOvKk9icNAcuXryo+vp6paWlac6cORoxYoQqKytD++vq6tTY2Kjs7Gynn/QqDKEDAIw12E9ie/zxx7V06VJNnDhRZ86c0datWzVs2DCtWLFCSUlJWrNmjYqKiuT1euXxeLRhwwZlZ2dH/Ap0iQQOAECfnT59WitWrND58+d10003af78+aqpqdFNN90kSXrppZcUFxengoICdXR0KDc3V6+99tqAxEICBwCYa5AXM3n77be/cX9CQoJKS0tVWlra/5j6iAQOADCWK9jTnPQ3FRexAQBgICpwAIC5WA8cAAAD9WNFsav6G4ohdAAADEQFDgAwVn+XBP1qf1ORwAEA5orhOXCG0AEAMBAVOADAXJZCa3r3u7+hSOAAAGMxBw4AgIksOZwDj1gkg445cAAADEQFjn7zHAvY7rPh9H22++zMqLLdB0CMiOGr0EngAABzBSW5HPY3FEPoAAAYiAocAGAsrkIHAMBEMTwHzhA6AAAGogIHAJgrhitwEjgAwFwxnMAZQgcAwEBU4AAAc8XwfeAkcACAsbiNDAAAEzEHDgAATEIFjn673PC57T6n59k/zz9qjv1OAGJD0JJcDqrooLkVOAkcAGAuhtABAIBJbCXwkpISzZ07V4mJiUpJSdGyZctUV1cXdszChQvlcrnC2mOPPRbRoAEA6GH9vQrvT1OMVOBVVVXy+/2qqanRgQMH1NXVpcWLF6u9vT3suLVr1+rs2bOhtn379ogGDQCAJGfJ2+nwe5TZmgOvqKgIe11WVqaUlBTV1tZqwYIFoe2jRo2Sz+eLTIQAAOAqjubAW1tbJUlerzds++7duzVu3DhNnz5dxcXF+vLLL6/5Hh0dHWprawtrAAD0SdBy3gzV76vQg8GgNm7cqLvvvlvTp08PbX/kkUc0ceJEpaen6/jx43rqqadUV1enX//6172+T0lJiZ555pn+hgEAiGVWsKc56W+ofidwv9+vEydO6MiRI2Hb161bF/p7xowZSktL06JFi1RfX6/Jkydf9T7FxcUqKioKvW5ra1NGRkZ/wwIAICb0K4EXFhZq//79Onz4sMaPH/+Nx2ZlZUmSTp061WsCd7vdcrvd/QkDABDrYvg+cFsJ3LIsbdiwQXv27NGhQ4eUmZl53T7Hjh2TJKWlpfUrQAAArino8FawWJkD9/v9Ki8v1759+5SYmKhAICBJSkpK0siRI1VfX6/y8nItWbJEY8eO1fHjx7Vp0yYtWLBAM2fOHJAPAACIYVTgfbNjxw5JPQ9r+apdu3Zp9erVio+P1wcffKCXX35Z7e3tysjIUEFBgTZv3hyxgAEAQD+G0L9JRkaGqqqqHAUEAECfWXJYgUcskkHHYiYAAHPF8BA6i5kAAGAgKnAAgLmCQUkOHsYSjMEHuQAAEHUMoQMAAJNQgQMAzBXDFTgJHABgrhh+EhtD6AAAGIgKHABgLMsKynKwJKiTvtFGAgcAmMuynA2DMwcOAEAUWA7nwA1O4MyBAwBgICpwAIC5gkHJ5WAemzlwAACigCF0AABgEipwAICxrGBQloMhdG4jAwAgGhhCBwAAJqECBwCYK2hJrtiswEngAABzWZYkJ7eRmZvAGUIHAMBAVOAAAGNZQUuWgyF0iwocAIAosILOWz+Ulpbq29/+thISEpSVlaXf/e53Ef5g10cCBwAYywpajptdv/rVr1RUVKStW7fqD3/4g2bNmqXc3FydO3duAD7htZHAAQCw4cUXX9TatWv16KOPatq0adq5c6dGjRqlX/ziF4Max5CbA78yH3FZXY7uzQcARMdldUkanPnly1aHowVJrsTa1tYWtt3tdsvtdl91fGdnp2pra1VcXBzaFhcXp5ycHFVXV/c7jv4Ycgn8woULkqQjej/KkQAAnLhw4YKSkpIG5L3j4+Pl8/l0JOA8V4wZM0YZGRlh27Zu3apt27Zddexf//pXdXd3KzU1NWx7amqq/vSnPzmOxY4hl8DT09PV1NSkxMREuVyusH1tbW3KyMhQU1OTPB5PlCKMPr6HHnwPPfgeevA99BgK34NlWbpw4YLS09MH7BwJCQlqaGhQZ2en4/eyLOuqfNNb9T3UDLkEHhcXp/Hjx3/jMR6PJ6b/D3oF30MPvocefA89+B56RPt7GKjK+6sSEhKUkJAw4Of5qnHjxmnYsGFqbm4O297c3CyfzzeosXARGwAAfRQfH685c+aosrIytC0YDKqyslLZ2dmDGsuQq8ABABjKioqKtGrVKt15552666679PLLL6u9vV2PPvrooMZhVAJ3u93aunWrEXMTA4nvoQffQw++hx58Dz34Hgbeww8/rL/85S/asmWLAoGAZs+erYqKiqsubBtoLsvk58gBABCjmAMHAMBAJHAAAAxEAgcAwEAkcAAADGRMAh8KS7dF27Zt2+RyucLa1KlTox3WgDt8+LCWLl2q9PR0uVwu7d27N2y/ZVnasmWL0tLSNHLkSOXk5OjkyZPRCXYAXe97WL169VW/j7y8vOgEO0BKSko0d+5cJSYmKiUlRcuWLVNdXV3YMZcuXZLf79fYsWM1ZswYFRQUXPXQDdP15XtYuHDhVb+Hxx57LEoRYyAYkcCHytJtQ8Htt9+us2fPhtqRI0eiHdKAa29v16xZs1RaWtrr/u3bt+uVV17Rzp07dfToUY0ePVq5ubm6dOnSIEc6sK73PUhSXl5e2O/jrbfeGsQIB15VVZX8fr9qamp04MABdXV1afHixWpvbw8ds2nTJr333nt69913VVVVpTNnzuihhx6KYtSR15fvQZLWrl0b9nvYvn17lCLGgLAMcNddd1l+vz/0uru720pPT7dKSkqiGNXg27p1qzVr1qxohxFVkqw9e/aEXgeDQcvn81kvvPBCaFtLS4vldrutt956KwoRDo6vfw+WZVmrVq2yHnjggajEEy3nzp2zJFlVVVWWZfX8bz9ixAjr3XffDR3z2WefWZKs6urqaIU54L7+PViWZX3nO9+x/umf/il6QWHADfkK/MrSbTk5OaFt0Vq6bSg4efKk0tPTNWnSJK1cuVKNjY3RDimqGhoaFAgEwn4fSUlJysrKisnfx6FDh5SSkqJbb71V69ev1/nz56Md0oBqbW2VJHm9XklSbW2turq6wn4PU6dO1YQJE27o38PXv4crdu/erXHjxmn69OkqLi7Wl19+GY3wMECG/JPYhtLSbdGWlZWlsrIy3XrrrTp79qyeeeYZ3XPPPTpx4oQSExOjHV5UBAIBSer193FlX6zIy8vTQw89pMzMTNXX1+tHP/qR8vPzVV1drWHDhkU7vIgLBoPauHGj7r77bk2fPl1Sz+8hPj5eycnJYcfeyL+H3r4HSXrkkUc0ceJEpaen6/jx43rqqadUV1enX//611GMFpE05BM4/i4/Pz/098yZM5WVlaWJEyfqnXfe0Zo1a6IYGYaC5cuXh/6eMWOGZs6cqcmTJ+vQoUNatGhRFCMbGH6/XydOnIiJ60C+ybW+h3Xr1oX+njFjhtLS0rRo0SLV19dr8uTJgx0mBsCQH0IfSku3DTXJycmaMmWKTp06Fe1QoubKb4Dfx9UmTZqkcePG3ZC/j8LCQu3fv18ffvhh2PLDPp9PnZ2damlpCTv+Rv09XOt76E1WVpYk3ZC/h1g15BP4UFq6bai5ePGi6uvrlZaWFu1QoiYzM1M+ny/s99HW1qajR4/G/O/j9OnTOn/+/A31+7AsS4WFhdqzZ48OHjyozMzMsP1z5szRiBEjwn4PdXV1amxsvKF+D9f7Hnpz7NgxSbqhfg+xzogh9KGydFu0Pf7441q6dKkmTpyoM2fOaOvWrRo2bJhWrFgR7dAG1MWLF8OqhoaGBh07dkxer1cTJkzQxo0b9fzzz+uWW25RZmamnn76aaWnp2vZsmXRC3oAfNP34PV69cwzz6igoEA+n0/19fV68skndfPNNys3NzeKUUeW3+9XeXm59u3bp8TExNC8dlJSkkaOHKmkpCStWbNGRUVF8nq98ng82rBhg7KzszVv3rwoRx851/se6uvrVV5eriVLlmjs2LE6fvy4Nm3apAULFmjmzJlRjh4RE+3L4Pvq1VdftSZMmGDFx8dbd911l1VTUxPtkAbdww8/bKWlpVnx8fHWt771Levhhx+2Tp06Fe2wBtyHH35oSbqqrVq1yrKsnlvJnn76aSs1NdVyu93WokWLrLq6uugGPQC+6Xv48ssvrcWLF1s33XSTNWLECGvixInW2rVrrUAgEO2wI6q3zy/J2rVrV+iY//qv/7J++MMfWv/wD/9gjRo1ynrwwQets2fPRi/oAXC976GxsdFasGCB5fV6Lbfbbd18883WE088YbW2tkY3cEQUy4kCAGCgIT8HDgAArkYCBwDAQCRwAAAMRAIHAMBAJHAAAAxEAgcAwEAkcAAADEQCBwDAQCRwAAAMRAIHAMBAJHAAAAxEAgcAwED/H2bdjQ6AsaYIAAAAAElFTkSuQmCC",
      "text/plain": [
       "<Figure size 640x480 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure()\n",
    "plt.imshow(train_images[3])\n",
    "plt.colorbar()\n",
    "plt.grid(False)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [],
   "source": [
    "model = tf.keras.Sequential([\n",
    "    tf.keras.layers.Flatten(input_shape=(28, 28)),\n",
    "    tf.keras.layers.Dense(128, activation='relu'),\n",
    "    tf.keras.layers.Dense(10)\n",
    "])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [],
   "source": [
    "model.compile(optimizer='adam',\n",
    "              loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True),\n",
    "              metrics=['accuracy'])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch 1/10\n",
      "1875/1875 [==============================] - 5s 2ms/step - loss: 2.5738 - accuracy: 0.8607\n",
      "Epoch 2/10\n",
      "1875/1875 [==============================] - 4s 2ms/step - loss: 0.3810 - accuracy: 0.9106\n",
      "Epoch 3/10\n",
      "1875/1875 [==============================] - 5s 3ms/step - loss: 0.2887 - accuracy: 0.9281\n",
      "Epoch 4/10\n",
      "1875/1875 [==============================] - 5s 3ms/step - loss: 0.2467 - accuracy: 0.9380\n",
      "Epoch 5/10\n",
      "1875/1875 [==============================] - 6s 3ms/step - loss: 0.2286 - accuracy: 0.9438\n",
      "Epoch 6/10\n",
      "1875/1875 [==============================] - 7s 4ms/step - loss: 0.2091 - accuracy: 0.9483\n",
      "Epoch 7/10\n",
      "1875/1875 [==============================] - 6s 3ms/step - loss: 0.1937 - accuracy: 0.9521\n",
      "Epoch 8/10\n",
      "1875/1875 [==============================] - 7s 4ms/step - loss: 0.1914 - accuracy: 0.9552\n",
      "Epoch 9/10\n",
      "1875/1875 [==============================] - 7s 4ms/step - loss: 0.1827 - accuracy: 0.9565\n",
      "Epoch 10/10\n",
      "1875/1875 [==============================] - 7s 4ms/step - loss: 0.1799 - accuracy: 0.9581\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<keras.callbacks.History at 0x23134b92da0>"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "model.fit(train_images, train_labels, epochs=10)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "313/313 - 1s - loss: 0.2682 - accuracy: 0.9520 - 720ms/epoch - 2ms/step\n",
      "\n",
      "Test accuracy: 0.9520000219345093\n"
     ]
    }
   ],
   "source": [
    "test_loss, test_acc = model.evaluate(test_images,  test_labels, verbose=2)\n",
    "\n",
    "print('\\nTest accuracy:', test_acc)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "313/313 [==============================] - 1s 2ms/step\n"
     ]
    }
   ],
   "source": [
    "probability_model = tf.keras.Sequential([model, \n",
    "                                         tf.keras.layers.Softmax()])\n",
    "predictions = probability_model.predict(test_images)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([1.0952585e-33, 9.5967830e-13, 1.0151189e-10, 4.1219735e-08,\n",
       "       9.7849734e-18, 1.9117935e-13, 2.0890413e-31, 1.0000000e+00,\n",
       "       2.2028594e-16, 1.0514502e-16], dtype=float32)"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "predictions[0]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "7"
      ]
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.argmax(predictions[0])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "7"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "test_labels[0]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [],
   "source": [
    "def plot_image(i, predictions_array, true_label, img):\n",
    "  true_label, img = true_label[i], img[i]\n",
    "  plt.grid(False)\n",
    "  plt.xticks([])\n",
    "  plt.yticks([])\n",
    "\n",
    "  plt.imshow(img, cmap=plt.cm.binary)\n",
    "\n",
    "  predicted_label = np.argmax(predictions_array)\n",
    "  if predicted_label == true_label:\n",
    "    color = 'blue'\n",
    "  else:\n",
    "    color = 'red'\n",
    "\n",
    "  plt.xlabel(\"{} {:2.0f}% ({})\".format(predicted_label,\n",
    "                                100*np.max(predictions_array),\n",
    "                                predicted_label),\n",
    "                                color=color)\n",
    "\n",
    "def plot_value_array(i, predictions_array, true_label):\n",
    "  true_label = true_label[i]\n",
    "  plt.grid(False)\n",
    "  plt.xticks(range(10))\n",
    "  plt.yticks([])\n",
    "  thisplot = plt.bar(range(10), predictions_array, color=\"#777777\")\n",
    "  plt.ylim([0, 1])\n",
    "  predicted_label = np.argmax(predictions_array)\n",
    "\n",
    "  thisplot[predicted_label].set_color('red')\n",
    "  thisplot[true_label].set_color('blue')\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAABJsAAAPeCAYAAACrxRtMAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjYuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/P9b71AAAACXBIWXMAAA9hAAAPYQGoP6dpAAC2O0lEQVR4nOzdeZxWVf048M+AbMqmIgqyuIsrLiiilqXmWmqWWlFZVi5hSqZGpVGZiku2qD/cUssNl8QUF9xRU3MDxV0UFQUlFAVBQYfz++N+EYbnDjzPzB2Y5f1+veblzGfOOffz4L33zPN57r2nKqWUAgAAAAAK0GpFJwAAAABA86HYBAAAAEBhFJsAAAAAKIxiEwAAAACFUWwCAAAAoDCKTQAAAAAURrEJAAAAgMIoNgEAAABQmJXq2nHBggUxderU6NSpU1RVVRWZE+RKKcXs2bOjZ8+e0arV8quT2tdpDhw/tBT2dag7xw8thX0d6q7c46fOxaapU6dG796969od6mzKlCnRq1ev5bY9+zrNieOHlsK+DnXn+KGlsK9D3S3r+KlzsalTp06fb6Bz5851HQbKNmvWrOjdu/fn+97yYl9vWSZMiNhll7r1HTcuYqutisymOI4fWgr7eu3qc36LaNznOIrh+KGlaM77enP9W5bGo9zjp87FpoWX/XXu3NmkwHK1vC85ta+3LB071q9vY99FHD+0FPb1UvU5vy3s30hfGgVz/NBSNMd9vbn/LUvjsazjxwPCAQAAACiMYhMAAAAAhVFsAgAAAKAwik0AAAAAFEaxCQAAAIDCKDYBAAAAUBjFJgAAAAAKo9gEAAAAQGEUmwAAAAAojGITAAAAAIVRbAIAAACgMIpNAAAAABRGsQkAAACAwig2AQAAAFCYlVZ0AgDQlJ199tm58Y8//jg3/swzz5TEbrjhhoq2edRRR5XEBg0alNv2e9/7XkVjAwBAfbmyCQAAAIDCKDYBAAAAUBjFJgAAAAAKo9gEAAAAQGEUmwAAAAAojNXoAKBMhxxySEns+uuvr/e4VVVVFbW/4IILSmJ33313bttddtklN96nT5+KtglA0/fyyy/nxjfeeOPc+N/+9reS2M9+9rNCcwKaJ1c2AQAAAFAYxSYAAAAACqPYBAAAAEBhFJsAAAAAKIwHhAPAEvIeBB5RzMPA+/XrVxLba6+9ctu+9tprufGbb765JDZp0qTctldeeWVu/Ne//nVtKQLQTI0fPz433qpV/jUIa6+9dkOmAzRjrmwCAAAAoDCKTQAAAAAURrEJAAAAgMIoNgEAAABQGMUmAAAAAApjNToAWqwnnngiNz569Oiyx9h8881z43krxkVEdOvWrSTWsWPH3Lbz58/PjQ8cOLAk9vTTT+e2fe+993LjALQ8EyZMyI3XNg8deOCBDZgN0Jy5sgkAAACAwig2AQAAAFAYxSYAAAAACqPYBAAAAEBhmsUDwm+44YaS2MUXX5zbtmfPnrnx9u3bl8QGDx6c23attdbKjW+wwQa1pQhAIzRt2rTceEopN573MPCxY8fmtu3Ro0fdE/s/Z599dm78hRdeKHuMr371q/XOA4CmZ+LEiSWxc889N7ft97///YZOB2hhXNkEAAAAQGEUmwAAAAAojGITAAAAAIVRbAIAAACgMIpNAAAAABSmWaxGd8IJJ5TEXn/99XqPe8EFF+TGO3funBvfdNNN673N5a13794lsRNPPDG37YABAxo6HYDl6mtf+1pufNKkSbnxTp06lcRWW221QnNa3LXXXpsbnz9/foNtE4Dm4aWXXiqJzZkzJ7ftIYcc0tDpAC2MK5sAAAAAKIxiEwAAAACFUWwCAAAAoDCKTQAAAAAURrEJAAAAgMI0i9XoLrnkkpLY008/ndu2thXjnn/++ZLY+PHjc9vef//9ufFHH320JNanT5/ctm+++WZuvBJt2rTJjXfr1q0kNm3atNy2eTnnrVAXYTU6oOXo27fvct3eWWedlRt/+eWXyx5j4MCBFcUBaN7OPPPMktg666yT29bf+UDRXNkEAAAAQGEUmwAAAAAojGITAAAAAIVRbAIAAACgMM3iAeG77bZbWbGl2WuvvcpuO3PmzNx43gPFa3vY3uOPP1729mrTrl273PjGG29cEuvXr19u2/fff78ktv7669cvMQBqNWbMmJLYb3/729y28+bNy42vueaaJbERI0bktl155ZUryA6Apub111/Pjee938h7nxARscoqqxSZEoArmwAAAAAojmITAAAAAIVRbAIAAACgMIpNAAAAABRGsQkAAACAwjSL1eiWt1VXXTU3vuuuu5Y9RqWr5VXiX//6V0msthX0ttxyy5LYt771rcJzAiDzxBNPlMRqW3WuNoccckhJbJdddqlzTgA0XePGjSu77Rpr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9kxp4TH/wQfZJHH99YvavPBCNjEt/EN/771TGjky+/7551NaeeXs+/nzU+rfP6XHHy8vx+uvzyaUpZk+Pcvnn/+sGR83LnsjNHduedti2ebNm5dat25dchL//ve/n/bbb786jVnEpPDKK6+kiEgTF//LpUyfffZZuuaaa1Lbtm3Tc889V1Hf73//+2no0KEppVSnSWHllVdOPXr0SOuuu276zne+k954442y+2+yySZp6NCh6Zvf/GZaY4010lZbbZUuuuiiivJf3Lx589Lqq6+eTj311LL7nHrqqalv377ppZdeSimlNGHChNS9e/d05ZVXlj3GrFmzUkSku+++u0Z8p512SrssWUGmENOnZ+frcv+Gai5zRUop/fSnKX35yzVj5orimStqMleYK5qacotNi9tll/xi08EHp7TvvjVjAwemdMQR2fcLFmQfapx11qLff/BBSu3aLSoKHXVUSr/8Zfb93LlZftOnZz/vuWdWICvH44+n1KpVSrNm5f/+sstqLzbNm5fltMQuSD2YK2oyVzStuaLZ30a3uPnzI668MrsloKqqfuM8+WR2+epCrVplPz/ySPbzk09GfPppzTb9+kX06bOoTf/+EffeG/HZZxFjx0YsvBLwzDMjvvSliAEDysvnwQcjtt126W3++c/sstdvfrNmfMCAbPv//W9522LZZsyYEdXV1bHmmmvWiK+55prxzjvvrJCcFixYEEOHDo2ddtopNt9887L7TZw4MTp27Bjt2rWLI488MkaPHh2bbrpp2f1HjRoVTz31VJx++ul1STsGDhwYl19+edxxxx0xcuTImDx5cnzhC1+I2bNnl9X/tddei5EjR8aGG24YY8eOjaOOOiqOOeaY+Mc//lGnfG666ab44IMP4gc/+EHZfYYNGxbf+ta3ol+/ftGmTZvYeuutY+jQoTF48OCyx+jUqVMMGjQoTjnllJg6dWpUV1fHlVdeGY888khMmzatDq+EZfnww+y/q61W9zGa4lwRkb32JV+3uaJ45opFzBXmipbukUdqzgMREXvuuWgemDw54p13arbp0iW7NXvxueKhhyI+/jibK3r0iOjWLeKqq7Jb877+9fJyefDB7Da8Tp0qfx1t20ZstZXbrotkrljEXNH05oqVCh2tkbvppogPPoio4P9nrhkzIqqrI5Y45mPNNSNefDH7/p13shPukvc0r7lm9ruIiGHDIo46KmL99bPnZ/z979m91//4RzZxHHlkxJ13Zn/kX3xxNqnkeeON7N7xpfn737P7xTt0qBlfeeVs3DfeKOeV01QNGTIknn322YruS46I2HjjjWPChAnx4Ycfxg033BCHHnpojBs3rqyJYcqUKXHsscfGXXfdFe3bt69T3nvvvffn32+55ZYxcODA6Nu3b1x33XXxox/9aJn9FyxYEAMGDIjTTjstIiK23nrrePbZZ+OCCy6IQw89tOJ8/v73v8fee+8dPZd1wC3muuuui6uuuiquvvrq2GyzzWLChAkxdOjQ6NmzZ0U5XHHFFXHYYYfF2muvHa1bt45tttkmvv3tb8eTTz5Z8etg6RYsyJ6psdNOERX8DVWiKc4VDz8cce21EbfeWjNurmgZzBXmClaMd97JnysWzgML/7u0NocdFvHMM9mzk7p1i7juuoiZM7PnPN1/f8RJJ0WMGpXNJZdeGrH22vm5lDNXLE3PnuaK5s5cYa4oV4sqNv397xF7712/E2iRunSJuPrqmrFdd80e4HfVVRGvvZY9oPYnP4n4wx9qfwDsxx9nn1jU5pFHIl54IeKKK/J/36FDxNy5dXsNlOrWrVu0bt063l38Cb8R8e6778Zaa6213PM5+uijY8yYMfHAAw9Er169Kurbtm3b2GCDDSIiYtttt43HH388/vrXv8aFF164zL5PPvlkTJ8+PbbZZpvPY9XV1fHAAw/EeeedF/PmzYvWrVtXlE/Xrl1jo402ikmTJpXVvkePHiUT2CabbBL/+te/KtpuRMQbb7wRd999d9x4440V9TvhhBM+/xQiImKLLbaIN954I04//fSKJoX1118/xo0bF3PmzIlZs2ZFjx494pBDDon11luvonxYtiFDIp59NvuEuDFYXnPFs89mDw8fPjxijz1Kf2+uKJa5ImOuyJgrqK82bbIFKRb3wx9GHHNMtrDETTdli0KceWYWq233XtZcsSzmimKZKzLmikxTmytazG10b7yRrcrw4x/Xf6xu3SJat665WlBE9vPCY36ttbJbKD74oPY2S7rssuzT7f33zz6BOOCAbOI46KDs56XlM3Nm7b+/5JLsktbabp94//2INdaovT+Vadu2bWy77bZxzz33fB5bsGBB3HPPPTFo0KDllkdKKY4++ugYPXp03HvvvbHuuuvWe8wFCxbEvHnzymq72267xcSJE2PChAmffw0YMCAGDx4cEyZMqHhCiIj46KOP4tVXX40ePXqU1X6nnXYqWZb15Zdfjr59+1a87csuuyy6d+8e++67b0X95s6dG61a1TzVtm7dOhYsWFBxDhERq6yySvTo0SNmzpwZY8eOjf33379O45Dv6KMjxoyJuO++bAnn+mhKc8Xzz0fstlvE4Ydnn37nMVcUy1yRMVdkzBUt21prLXuuWBirrc2S7rsvWzX16KOzuWGffSJWWSXi4IPr975iWcwVxTJXZMwVmSY3VxT6BKhGbPjw7MF6la6OsLSHvh599KKfq6tTWnvt0oe+3nDDojYvvljzoa+Lmz49pXXWSemtt7Kf99svpb/8Jft+9OjsIbC1Oeus2n8/e3ZKHTuWriy00KRJWU6TJtU+PpUbNWpUateuXbr88svT888/nw4//PDUtWvX9M4775Q9xuzZs9P48ePT+PHjU0Skc845J40fP77sB9kdddRRqUuXLun+++9P06ZN+/xrbplP+B02bFgaN25cmjx5cnrmmWfSsGHDUlVVVbrzzjvLfg1LqvRBfr/4xS/S/fffnyZPnpz+85//pN133z1169YtTV/4xMtleOyxx9JKK62UTj311PTKK6+kq666Kq288soVPUQvpWzVjz59+qRfLnzyZgUOPfTQtPbaa6cxY8akyZMnpxtvvDF169YtnXjiiRWNc8cdd6Tbb789vfbaa+nOO+9M/fv3TwMHDkzz58+vOCdKLViQPci7Z8+UXn658v5Nea549tmUundP6YQTau9rrmgY5op85gpzRVNQ9APCv/rVmrFBg0ofEH722Yt+/+GHNR8QvriPP85WpnvqqeznY47JVjNNKaXx42t/wHdK2WISq65a+2JKS3tAeEop9eqVUoULjLEM5op85orGP1e0iGJTdXW2hHW5/z/nzctOxOPHZ8t3Hn989v0rryxqM2pUdoK//PJsdaDDD8+Ws178mD/yyGy7996bLWc9aFD2lec736lZEDrjjGw56+efz1Yi+ulPa8/3mWdSWmmllN5/v/R3l1ySUvv2Kc2cmd/3sstSWm+92sem7s4999zUp0+f1LZt27T99tunRx99tKL+9913X4qIkq9DDz20rP55fSMiXXbZZWX1P+yww1Lfvn1T27Zt0xprrJF22223ek0IKVU+KRxyyCGpR48eqW3btmnttddOhxxySJpU4bvdW265JW2++eapXbt2qV+/fnVaNWLs2LEpIj5f+aESs2bNSscee2zq06dPat++fVpvvfXSb37zmzRv3ryKxrn22mvTeuutl9q2bZvWWmutNGTIkPTBBx9UnA/5jjoq++P5/vtTmjZt0dfS/oZqDnPFxInZCnXf/W7N173k313mioZjrihlrjBXNFazZy8670ekdM452ffLer++sM+222bn8fHjU1p8Ea7//Cc7P599drYi6fDh2QcRiy/0NWJENn/8+9/Z+Xz//VNad92ssLSkX/86pV/8YtHP116bzTNPP53Sj36U0j771J7rjBml204pe43jx6f0+99nH2QvfE2zZy9qM3lySlVVKb3++tL/PaicuaKUuaLxzxUtotg0dmw2IZT7/3Py5Kz9kl9LrgR47rnZibtt2+zT6yWP+Y8/zv7wX3XVbKnqr389+yN+SXfckfWvrl4UmzMnpYMOSqlTp5R22y2ld99des7bb5/SBReUxgcNyia12uyxx6JP2AFaqrxzfkRWZKlNc5grhg/Pfw19+9bsZ64ASOm++/LPmct6v17Oefa661LaaKNsrthss5RuvbXm7xcsSOnkk1Nac83sQ4zddst/bzNxYkobbJDSRx8tilVXZx+qdO6c0nbb1fxQJM/BB6c0bFjN2KGH5r+O++5b1Oa001Lac8+ljw20HFUppVTsjXmsCLfeGnHCCdkDXluV+SSu557LHjL78su1r14EQPNhrgBgWZ55JuIrX4l49dWIjh3L6zN/fsSGG2YLWuy0U8PmBzQNLWo1uuZs332zpbDffjuid+/y+kybFvHPf3rzANBSmCsAWJYtt4w444yIyZMjttiivD5vvhnx618rNAGLuLIJAAAAgMKUeRE9AAAAACybYhMAAAAAhVFsAgAAAKAwik0AAAAAFEaxCQAAAIDCKDYBAAAAUBjFJgAAAAAKo9gEAAAAQGEUmwAAAAAojGITAAAAAIVRbAIAAACgMIpNAAAAABRGsQkAAACAwig2AQAAAFCYleraccGCBTF16tTo1KlTVFVVFZkT5EopxezZs6Nnz57RqtXyq5Pa12kOHD+0FPZ1qDvHDy2FfR3qrtzjp87FpqlTp0bv3r3r2h3qbMqUKdGrV6/ltj37Os2J44eWwr4Odef4oaWwr0PdLev4qXOxqVOnTp9voHPnznUdBso2a9as6N279+f73vKyrH19woSIXXap+/jjxkVstVXd+0M5GuvxA0Wzrzdu5szGzfFDS9Gc9/X6nGedYylHucdPnYtNCy/769y5s0mB5Wp5X3K6rH29Y8f6jd+xY4RDiOWlsR0/0FDs642TObNpcPzQUjTHfb0+51nnWCqxrOPHA8IBAAAAKIxiEwAAAACFUWwCAAAAoDCKTQAAAAAURrEJAAAAgMIoNgEAAABQGMUmAAAAAAqj2AQAAABAYRSbAAAAACiMYhMAAAAAhVFsAgAAAKAwik0AAAAAFEaxCQAAAIDCKDYBAAAAUBjFJgAAAAAKo9gEAAAAQGEUmwAAAAAojGITAAAAAIVRbAIAAACgMIpNAAAAABRmpRWdQHMyZ86cktgJJ5yQ2/aCCy7IjQ8YMKAkdv311+e27du3bwXZAQAAADQ8VzYBAAAAUBjFJgAAAAAKo9gEAAAAQGEUmwAAAAAojAeEF2jq1KklsYsvvji3bevWrXPjTzzxREnslltuyW179NFHV5AdAA3hqaeeyo0feOCBufHXX3+9AbOpnzvvvDM3vskmm5TEevfu3dDpAFCw2t5X7Lfffrnxc889tyR21FFH5bat7f0N0DK5sgkAAACAwig2AQAAAFAYxSYAAAAACqPYBAAAAEBhFJsAAAAAKIzV6Orgf//7X2780EMPXc6ZALCijR07Njc+b9685ZxJ/d1888258UsvvbQkNmrUqIZOB4B6eO+990pita0kV5uf/exnJbEf/ehHuW07dOhQ0dhA8+bKJgAAAAAKo9gEAAAAQGEUmwAAAAAojGITAAAAAIXxgPCl+Nvf/pYbv+mmm3Ljjz/+eIPk8eCDD+bGU0q58f79+5fEvvjFLxaaE0BL9Nlnn5XEbrvtthWQScMYMGBAbvycc84pic2ZMye37SqrrFJoTgDUzQMPPFASe/vttysa49vf/nZJrH379nXOCWg5XNkEAAAAQGEUmwAAAAAojGITAAAAAIVRbAIAAACgMIpNAAAAABTGanRLMXTo0Nx469atl2seN954Y0XxPn36lMSuu+663Lbbbrtt3RMDaGHuu+++ktjDDz+c2/aXv/xlQ6dTuPfffz83/txzz5XE5s6dm9vWanQAy9e8efNy43/84x/rPfb3vve9klhVVVW9xwWaP1c2AQAAAFAYxSYAAAAACqPYBAAAAEBhFJsAAAAAKIxiEwAAAACFsRrd/9lnn31KYiml3LbV1dUNlke3bt1KYrWt7PPGG2/kxidPnlwS22677XLbLliwoILsAFqGiRMn5sa/9a1vlcQ22GCD3La//vWvC81pebj55ptXdAoAVOiZZ57JjT/11FNlj7HSSvlvC/fee+865QTgyiYAAAAACqPYBAAAAEBhFJsAAAAAKIxiEwAAAACFaXEPCB83blxu/MUXXyyJVVVV5bZt3bp1vfM48sgjc+N77LFHSaxLly65be+9997c+Kmnnlp2HiNHjiyJHXXUUWX3B2iOajuPzp07tyR25ZVX5rbt2LFjoTkV7f333y+J1TZH1jYfArDi3XjjjfUe4ytf+UoBmQAs4somAAAAAAqj2AQAAABAYRSbAAAAACiMYhMAAAAAhVFsAgAAAKAwzXY1utdffz03/q1vfSs3PmPGjHpvs0+fPiWxb37zm7lthw8fnhtfeeWVy95e3759c+MXXnhhSay213fiiSeWxD755JPctkcffXRuvE2bNrWlCNCo3XDDDbnx2267LTe+wQYblMS22267QnNaXv74xz+WxGpbde5LX/pSSaxr164FZwRAXdS2kmietm3b5sZPO+20otIBiAhXNgEAAABQIMUmAAAAAAqj2AQAAABAYRSbAAAAACiMYhMAAAAAhWm2q9F9+umnufEiVp374he/mBu/9tprS2LdunWr9/ZqU9tqdL/+9a9LYscdd1xu2zlz5pTE8laoi4jYb7/9cuPrr79+bSkCNGrXX399bjzv3BgRcdRRRzVkOg2ittVZr7766pLYSivl/1lw0kknlcSsRAqwfD388MO58UceeaTsMWpb+XqrrbaqS0oAtXJlEwAAAACFUWwCAAAAoDCKTQAAAAAURrEJAAAAgMI02weEF2G77bbLjV922WW58YZ8GHgl8h7kfdVVV+W2feyxxxo6HYBG4cMPPyyJPfrooxWN8dOf/rSodJabiy66KDf+v//9ryS26aab5rbdddddC80JgMo9/vjj9R6jKS50ATRNrmwCAAAAoDCKTQAAAAAURrEJAAAAgMIoNgEAAABQGMUmAAAAAArT4lajq66uLrvtf//73wbMpOGklEpiCxYsKLttbf9Gw4cPz41feeWVFWQHsGLMmzevJPbWW2/ltv32t7/d0OksN6+++mrZbTfffPMGzASA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P8mh8eRQzvHjAeEAAAAAFEaxCQAAAIDCKDZBA2rXrl0MHz482rVrt0L6y0EOQOPXGM4NcpAD0Lg1hnODHORQiTo/IBwAAAAAluTKJgAAAAAKo9gEAAAAQGEUmwAAAAAojGJTM/HeexHdu0e8/nr5fS64IOJrX2uwlFq8888/P9ZZZ51o3759DBw4MB577LGK+j/wwAPxta99LXr27BlVVVVx0003VdT/9NNPj+222y46deoU3bt3jwMOOCBeeumlsvuPHDkyttxyy+jcuXN07tw5Bg0aFLfffntFOSxuxIgRUVVVFUOHDi27z+9+97uoqqqq8dWvX7+Ktvv222/Hd7/73Vh99dWjQ4cOscUWW8QTTzxRdv911lmnJIeqqqoYMmRIWf2rq6vj5JNPjnXXXTc6dOgQ66+/fpxyyilR6ePyZs+eHUOHDo2+fftGhw4dYscdd4zHH3+8ojHAXNH4mCtqMleYK1jx5s+P2GCDiIcfLr/P889H9OoVMWdOw+XVkpkrajJXNI25okUUm84/P2KddSLat48YODBiWcfmc89FfOMbWZ+qqoi//KVu437yScSQIRGrrx7RsWM25rvvLvr9++9nf8B37Bix9dYR48fX7D9kSMSf/lTeazz11Ij998/yWejNNyP23Tdi5ZWzNxcnnBDx2WeLfn/YYRFPPRXx4IPlbYPyXXvttXHcccfF8OHD46mnnor+/fvHnnvuGdOnTy97jDlz5kT//v3j/PPPr1MO48aNiyFDhsSjjz4ad911V3z66aexxx57xJwy/wro1atXjBgxIp588sl44oknYtddd439998/nnvuuYpzefzxx+PCCy+MLbfcsuK+m222WUybNu3zr4ceeqjsvjNnzoyddtop2rRpE7fffns8//zz8ac//SlWXXXVinJffPt33XVXREQcdNBBZfU/44wzYuTIkXHeeefFCy+8EGeccUaceeaZce6555adQ0TEj3/847jrrrviiiuuiIkTJ8Yee+wRu+++e7z99tsVjcOyjRiRnfuX9fdLc5krFnrvveyNQlVVxAcfLIqbKxqOuaImc4W5orF74IHsfNyzZ3auLOf9+rRpEd/5TsRGG0W0alX73HL99RH9+mVzxRZbRNx2W83fpxTx299G9OgR0aFDxO67R7zyyqLfz5sX8b3vRXTunG3r7rtr9j/rrIif/ay813nBBRHrrhux446LYqeemv288soRXbuW9tl004gddog455zytkH5zBU1mSua0FyRmrlRo1Jq2zalSy9N6bnnUvrJT1Lq2jWld9+tvc9jj6V0/PEpXXNNSmutldKf/1y3cY88MqXevVO6556UnngipR12SGnHHRf9/rjjUtpll5ReeimloUNT2nbbRb975JHs588+W/ZrnDMnpc6dsz4LffZZSptvntLuu6c0fnxKt92WUrduKf3qVzX7Hn98St/85rK3QWW23377NGTIkM9/rq6uTj179kynn356ncaLiDR69Oh65TR9+vQUEWncuHF1HmPVVVdNl1xySUV9Zs+enTbccMN01113pV122SUde+yxZfcdPnx46t+/f2VJLuaXv/xl2nnnnevcP8+xxx6b1l9//bRgwYKy2u+7777psMMOqxE78MAD0+DBg8ve5ty5c1Pr1q3TmDFjasS32Wab9Jvf/KbscVi2xx5LaZ11Utpyy5SWtas2h7licfvvn9Lee6cUkdLMmTV/Z65oGOaKRcwV5oqm4LbbUvrNb1K68cbsXFnO4TZ5ckrHHJPSP/6R0lZb5c8t//lPSq1bp3TmmSk9/3xKJ52UUps2KU2cuKjNiBEpdemS0k03pfT00yntt19K666b0scfZ7//299S2mSTlJ59NqWzzkppjTVSWrj7vfZaShtumNKHHy473wULsrbXXFMz/tvfpnTOOdmc1KVLft8xY1Lq0SOlTz9d9nYon7liEXNF05ormv2VTeecE/GTn0T88IdZxf2CC7KK/KWX1t5nu+2y6v+3vhXRrl3dxv3ww4i//z1rt+uuEdtuG3HZZdnlqI8+mrV54YVsGxttFHH44dnPERGffhpx5JHZmK1bL/s13nZblucOOyyK3XlndjnrlVdGbLVVxN57R5xySvYJ+/z5i9p97WsRN98c8fHHy94O5Zk/f348+eSTsfvuu38ea9WqVey+++7xyCOPrLC8Pvzww4iIWG211SruW11dHaNGjYo5c+bEoEGDKuo7ZMiQ2HfffWv8e1TilVdeiZ49e8Z6660XgwcPjjfffLPsvjfffHMMGDAgDjrooOjevXtsvfXWcfHFF9cpj4js/+2VV14Zhx12WFRVVZXVZ8cdd4x77rknXn755YiIePrpp+Ohhx6Kvffeu+ztfvbZZ1FdXR3t27evEe/QoUNFn8iwdB99FDF4cMTFF0eU8yFVc5grFho5Mrua6fjj8/uaK4pnrqjJXGGuaAr23jvij3+M+PrXy++zzjoRf/1rxPe/H9GlS36bv/41Yq+9srsQNtkk+5t9m20izjsv+31K2dWzJ52UXZ265ZYR//xnxNSpi66ueuGFiP32i9hss+yK1//9L2LGjOx3Rx0VccYZ2VVPy/LkkxGvvprdHbG43/8+4uc/z666qs1XvpJdjTtu3LK3Q3nMFTWZK5rWXNGsi03z52cnzMX3xVatsp/rc2yWM+6TT2ZvBBZv069fRJ8+i9r07x9x773ZrW1jx2YTR0TEmWdGfOlLEQMGlJfPgw9mb1AW98gj2WSw5pqLYnvuGTFrVnbrx0IDBmTb/+9/y9sWyzZjxoyorq6ONRf/x4+INddcM955550VktOCBQti6NChsdNOO8Xmm29edr+JEydGx44do127dnHkkUfG6NGjY9NNNy27/6hRo+Kpp56K008/vS5px8CBA+Pyyy+PO+64I0aOHBmTJ0+OL3zhCzF79uyy+r/22msxcuTI2HDDDWPs2LFx1FFHxTHHHBP/+Mc/6pTPTTfdFB988EH84Ac/KLvPsGHD4lvf+lb069cv2rRpE1tvvXUMHTo0Bg8eXPYYnTp1ikGDBsUpp5wSU6dOjerq6rjyyivjkUceiWnTptXhlZBnyJDsj+s6/v1SoinMFRHZBxN/+EP2xqVVLX8VmCuKZ65YxFxhrmjpHnmkdO7Zc89F88DkyRHvvFOzTZcu2a3Zi88VDz2UfSgwdmx2u123bhFXXZXdmldugezBB7MPNzp1qvx1tG2bfcjttuvimCsWMVc0vblipUJHa2RmzIiorq5ZcInIfn7xxYYd9513shPukvc0r7lm9ruIiGHDsk8a1l8/+9Tj73/P7r3+xz+yiePII7MrlAYMyD5pr+3TkDfeyO4dX9w77+Tnt/B3C628cjbuG2+U++ppioYMGRLPPvtsxdXqjTfeOCZMmBAffvhh3HDDDXHooYfGuHHjypoYpkyZEscee2zcddddJZXzci1epd9yyy1j4MCB0bdv37juuuviRz/60TL7L1iwIAYMGBCnnXZaRERsvfXW8eyzz8YFF1wQhx56aMX5/P3vf4+99947ei55wC3FddddF1dddVVcffXVsdlmm8WECRNi6NCh0bNnz4pyuOKKK+Kwww6LtddeO1q3bh3bbLNNfPvb344nn3yy4tdBqVGjsucSFflsxKYwV8ybF/Htb2dXaPXpE/Haa/l9zRUtg7nCXMGKUdvf7QvngYX/XVqbww6LeOaZ7Crabt0irrsuYubM7DlP99+fXRU1alQ2l1x6acTaa+fnkjdXVKJnT3NFc2euMFeUq1kXmxq7Ll0irr66ZmzXXbM/+q+6Kvuj/6WXslsw/vCH2h8A+/HH2ScWddWhQ8TcuXXvT03dunWL1q1bx7uLP+E3It59991Ya621lns+Rx99dIwZMyYeeOCB6NWrV0V927ZtGxtssEFERGy77bbx+OOPx1//+te48MILl9n3ySefjOnTp8c222zzeay6ujoeeOCBOO+882LevHnRupx7fxbTtWvX2GijjWLSpEllte/Ro0fJBLbJJpvEv/71r4q2GxHxxhtvxN133x033nhjRf1OOOGEzz+FiIjYYost4o033ojTTz+9oklh/fXXj3HjxsWcOXNi1qxZ0aNHjzjkkENivfXWqygfSk2ZEnHssRF33VW/c2lDaci54le/ym7Z+O53l52HuaJY5oqMuSJjrqC+2rTJHpexuB/+MOKYY7KFJW66KeLpp7OrYo85JqK23dv7isbFXJExV2Sa2lzRrG+j69Yte47FEsdmvPtuRH2OzXLGXWut7BaKxVf0Wda2L7ss+3R7//2zTyAOOCCbOA46KPt5afnMnFkzttZa+fkt/N3i3n8/Yo01ah+fyrRt2za23XbbuOeeez6PLViwIO65556K70uuj5RSHH300TF69Oi49957Y9111633mAsWLIh58+aV1Xa33XaLiRMnxoQJEz7/GjBgQAwePDgmTJhQ8YQQEfHRRx/Fq6++Gj169Cir/U477VSyLOvLL78cffv2rXjbl112WXTv3j32XfIhBsswd+7caLXEvUmtW7eOBQsWVJxDRMQqq6wSPXr0iJkzZ8bYsWNj//33r9M4LPLkkxHTp2fPx1hppexr3LiIv/0t+766um7jNoW54t57sxWQFr7u3XZb1Hb48JptzRXFMldkzBUZc0XLVtvf7YvPFQtjtbVZ0n33ZY/OOProbG7YZ5+IVVaJOPjgyueKSpgrimWuyJgrMk1urij0ceON0Pbbp3T00Yt+rq5Oae21Uyr34f19++avMLSscT/4IFtF4oYbFrV58cVs5Yq8lYCmT89WQHrrrezn/fZL6S9/yb4fPTqlpT04/6yzSn9/220ptWpVc8WjCy/MViL65JNFsUmTspwmTap9fCo3atSo1K5du3T55Zen559/Ph1++OGpa9eu6Z133il7jNmzZ6fx48en8ePHp4hI55xzTho/fnx64403yup/1FFHpS5duqT7778/TZs27fOvuXPnltV/2LBhady4cWny5MnpmWeeScOGDUtVVVXpzjvvLPs1LKnSVSN+8YtfpPvvvz9Nnjw5/ec//0m777576tatW5o+fXpZ/R977LG00korpVNPPTW98sor6aqrrkorr7xyuvLKKyvKu7q6OvXp0yf98pe/rKhfSikdeuihae21105jxoxJkydPTjfeeGPq1q1bOvHEEysa54477ki33357eu2119Kdd96Z+vfvnwYOHJjmz59fcU7UNGtWtuLP4l8DBqT03e/WXAloaZrqXDFpUs3Xfeml2bYffrjm/GGuaBjminzmCnNFU1DuanSL22WX/NXoDj44pa9+tWZs0KCUjjgi+37BgmzV07PPXvT7Dz9MqV270lXjUspWqNtkk5Seeir7+ZhjstVMU8pWqa5tNbmUUrr++pRWXXXRSnZLuuyypffv1SulChcYYxnMFfnMFY1/rmj2xaZRo7IT8eWXZ0uJHn54tuz00o7NefOyE/H48dnynccfn33/yiuVjXvkkSn16ZPSvfdmy1kPGpR95fnOd1I699xFP59xRrac9fPPZ0tR//Sntef7zDMprbRSSu+/vyj22Wcpbb55SnvskdKECSndcUe2BOqvflWz72WXpbTeerWPTd2de+65qU+fPqlt27Zp++23T48++mhF/e+7774UESVfhx56aFn98/pGRLrsssvK6n/YYYelvn37prZt26Y11lgj7bbbbvWaEFKqfFI45JBDUo8ePVLbtm3T2muvnQ455JA0qcJ3u7fcckvafPPNU7t27VK/fv3SRRddVGHWKY0dOzZFRHrppZcq7jtr1qx07LHHpj59+qT27dun9dZbL/3mN79J8+bNq2ica6+9Nq233nqpbdu2aa211kpDhgxJH3zwQcX5UJ7a3hAsrjnMFUu6777sDdTMmTXj5oqGY64oZa4wVzRWs2cvOu9HpHTOOdn3y3q/vrDPtttm5/Hx41N67rlFv//Pf7Lz89lnp/TCCykNH559ELH4Bx4jRmTzx7//nZ3P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QHOQt4Lne++912DbGzVqVG789ttvL4mddNJJuW1rW9Eub6UjAErNmTMnN17b39dPP/10Seymm26qaJuDBg0qiY0fPz637TrrrJMbf/PNN0tivXr1ym3bqpVrEIBiOasAAAAAUBjFJgAAAAAKo9gEAAAAQGEUmwAAAAAoTLN4QPgvfvGLktiVV16Z23abbbbJjR900EGF5rQiPfTQQyWxd955J7ftD3/4w5LYd7/73cJzAmhK3njjjdz4ZZddVvYY/fv3z42vueaaJbG77rqr7HEjIj788MOSWN7DyyMiBg8enBtfa621KtomQEswf/78kth3vvOd3LZ5DwKPiPj1r39dEtt9993rl1jU/iDw2vTp06fe2wSoK1c2AQAAAFAYxSYAAAAACqPYBAAAAEBhFJsAAAAAKIxiEwAAAACFaRar0VVVVZUVi4hYe+21c+Nt27YtNKciffzxx7nx0047LTd+/vnnl8Rq+/e49NJL654YQDM1YcKE3PisWbNKYl/84hdz244bNy43/sknn5TErr766ty2p59+em580qRJJbHaVh3df//9c+O33357SWy11VbLbQvQ3Hz00Ue58by/r2+55ZbctmussUZu/IQTTiiJrbzyyhVkB9D0ubIJAAAAgMIoNgEAAABQGMUmAAAAAAqj2AQAAABAYRSbAAAAAChMs1iNrhJjxozJje+xxx4lsa5du+a2Peqoo4pMqYb777+/rFhExKOPPlr2uAcddFAdMwJoeebNm5cbz1vZ8+c//3lFY7dv374kdthhh+W2veGGG3Ljr776akkspZTbtrYVkBrzKqwADe2mm27KjY8YMaIk1rdv39y2Dz74YG68S5cudc4LoLlwZRMAAAAAhVFsAgAAAKAwik0AAAAAFEaxCQAAAIDCNIsHhB977LElsXvvvTe37dSpU3Pj48aNK4nV9rDVf//73xVkV5m8beY9kHZp1l9//ZLYaaedVuecAFqaa665puy2t956a278gAMOqHceTzzxRL3H2GGHHXLjHTt2rPfYAE3Vww8/XHbbrbfeOjfeq1evotIBaHZc2QQAAABAYRSbAAAAACiMYhMAAAAAhVFsAgAAAKAwik0AAAAAFKZZrEa37bbblsQmTpyY23bChAm58TvuuKMkduaZZ+a27d69e2780EMPrSXD8n3ve98riW255ZYVjbHjjjuWxPJWqAMg37e//e3ceN5qpI8//nhu2xdffDE3njc/jR49OrftzJkzc+Ndu3Ytu+1FF12UG8+bbzbddNPctgDNzQ033FB229tvvz03/vvf/z43vt9++5XEalvRDqC5cmUTAAAAAIVRbAIAAACgMIpNAAAAABRGsQkAAACAwig2AQAAAFCYZrEaXZ5VV101N/7lL3+57PgZZ5xRaE7leO2110piKaXctltttVVu/Oyzzy4yJYAWZ/fdd8+Nd+nSpST2zDPP5LbdZJNNcuNVVVVl5/GVr3wlN37++eeXxL761a/mtn355Zdz43/7299KYhdccEHZuQE0Zf/73/9y43nn6Hnz5uW2rW01uj/+8Y8lsSOPPDK37cCBA3PjU6ZMKYltsMEGuW0322yz3Hie5557Ljc+aNCg3HivXr3KHhtgca5sAgAAAKAwik0AAAAAFEaxCQAAAIDCKDYBAAAAUJhm+4DwpuoPf/hDSay2h8meeeaZufE11lij0JwAWprVVlstN3799deXxL75zW/mtv3www9z43mLPhxzzDG5bWtbqKJ9+/YlsQMPPDC37emnn54bHzt2bEns1VdfzW27/vrr58YBmqrjjz8+N/6nP/2p3mNXV1eXxPIWdlhafHnr3r17bvxLX/pSSWzUqFENnA3QHLiyCQAAAIDCKDYBAAAAUBjFJgAAAAAKo9gEAAAAQGEUmwAAAAAojNXoVpC8FY0iIv7xj3+UxDp37pzbdvXVVy80JwCWbvfddy+J3XDDDbltr7766tx4165dS2J5K5FG5K86V5uTTz45N/7CCy/kxv/973+XnUfe3ATQlI0YMSI3fvDBB5fEBg8enNv2008/zY2/9dZbJbG8Feoak+nTp+fG896zbL755rltTzrppEJzApo2VzYBAAAAUBjFJgAAAAAKo9gEAAAAQGEUmwAAAAAojGITAAAAAIWxGt0Kcvvtt5fddt99982Nb7PNNkWlA0Ad5a1Qt7R4Q+nQoUNu/JBDDsmN561Gd9999+W2ff/990tiq622WgXZATQurVu3zo1vt912JbGXX365orHvueeeklhtK9f97ne/y40/9thjFW2zoaSUSmJPPvnkCsgEaGpc2QQAAABAYRSbAAAAACiMYhMAAAAAhVFsAgAAAKAwHhC+gtT2gPBVVlmlJHb88cc3dDoANFMHH3xwbvzmm28uiY0aNSq3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vbLX8sEHi+KHHRbx1FMRDz5Y3jYo37XXXhvHHXdcDB8+PJ566qno379/7LnnnjF9+vSyx5gzZ070798/zj///DrlMG7cuBgyZEg8+uijcdddd8Wnn34ae+yxR8yZM6es/r169YoRI0bEk08+GU888UTsuuuusf/++8dzzz1XcS6PP/54XHjhhbHllltW3HezzTaLadOmff710EMPld135syZsdNOO0WbNm3i9ttvj+effz7+9Kc/xaqrrlpR7otv/6677oqIiIMOOqis/meccUaMHDkyzjvvvHjhhRfijDPOiDPPPDPOPffcsnOIiPjxj38cd911V1xxxRUxceLE2GOPPWL33XePt99+u6JxKN/s2dl80bdvRIcOETvuGFHOPHz++RGbbJL12XjjiH/+s7TNX/6S/a5Dh4jevSN+/vNszljoqquy+KqrRhx3XM2+r78esdFGEbNmLTuXd96J+OtfI37zm8pe10knRQwbFrFgwbK3Qd2ZK2oyV5grmqLf/S77G3vxr2W9f/3004g//CFi/fWz9xH9+0fccUfNNuWcq88+Oyv4dO9e+p7hv/+N2HbbiM8+W/ZrePrpiNtuizjmmEWxH/yg9HXttdei33frFvH970cMH77s8akfc0VN5oomNFekFuKxx1JaZ52UttwypWOPXXbb449P6ZprUlprrZT+/OfSNqNGpdS2bUqXXprSc8+l9JOfpNS1a0rvvruozZFHptS7d0r33JPSE0+ktMMOKe2446LfH3dcSrvsktJLL6U0dGhK22676HePPJL9/Nlny35tc+ak1Llz1ifP/vuntPfeKUWkNHNmzd8df3xK3/zmsrdBZbbffvs0ZMiQz3+urq5OPXv2TKeffnqdxouINHr06HrlNH369BQRady4cXUeY9VVV02XXHJJRX1mz56dNtxww3TXXXelXXbZJR27rANwMcOHD0/9+/evLMnF/PKXv0w777xznfvnOfbYY9P666+fFixYUFb7fffdNx122GE1YgceeGAaPHhw2ducO3duat26dRozZkyN+DbbbJN+85vflD0OlTn44JQ23TSlceNSeuWVlIYPz861b71Ve5//9/9S6tQpmyNefTWbRzp2TOnmmxe1ueqqlNq1y/47eXJKY8em1KNHSj//efb7//0vpfbtszEeeyylNdZI6ZZbFvXfe++U/vWv8l7DKaektOeelb+uzz5Lac01U1pil6Ng5opFzBXmiqZq+PCUNtsspWnTFn39739L73PiiSn17JnSrbdmc8X/+3/Zef+ppxa1Wda5+umnU+rQIXufcffdWf9nnsl+9+mnKW21VTaHlONHP0rpiCNqxg49NKW99qr5ut5/v2abZ5/N5rP33itvO9SNuWIRc0XTmitaxJVNH30UMXhwxMUXZ58SL8t220WcdVbEt74V0a5dfptzzon4yU8ifvjDiE03zW5JW3nliEsvzX7/4YcRf/971m7XXbNPFi67LOLhhyMefTRr88IL2TY22ii7xeGFF7L4p59GHHlkNmbr1svO97bbsjx32KH0dyNHZlczHX98ft+vfS3i5psjPv542duhPPPnz48nn3wydt99989jrVq1it133z0eeeSRFZbXhx9+GBERq622WsV9q6urY9SoUTFnzpwYNGhQRX2HDBkS++67b41/j0q88sor0bNnz1hvvfVi8ODB8eabb5bd9+abb44BAwbEQQcdFN27d4+tt946Lr744jrlEZH9v73yyivjsMMOi6qqqrL67LjjjnHPPffEyy+/HBERTz/9dDz00EOx9957l73dzz77LKqrq6N9+/Y14h06dKjoExnK9/HH2W1kZ54Z8cUvRmywQfbp9QYbZOfV2lxxRcQRR0QcckjEeutl5/jDD48444xFbR5+OGKnnSK+853satQ99oj49rcXXR372msRXbpkY2y3XcSXv7xofrjmmog2bSIOPLC81zFqVM3bpct9Xa1bR+yzT9afhmGuqMlcYa5oylZaKWKttRZ9deu29PZXXBHx619n59n11os46qjs+4VXJ5Vzrn7xxYgtt8zeZ+y2W/b9iy9mvzvrrKzfdtstO/fq6ogbbsh/tEa7djVf15LvozbbLKJnz4jRo5e9HerGXFGTuaJpzRUtotg0ZEjEvvtG1HGfLDF/fsSTT9Ycr1Wr7OeFx/yTT2ZFo8Xb9OsX0afPojb9+0fce292eevYsdkkEZFNLF/6UsSAAeXl8+CDWTFrSc8/n12i+89/ZvnlGTAg2/5//1vetli2GTNmRHV1day55po14muuuWa88847KySnBQsWxNChQ2OnnXaKzTffvOx+EydOjI4dO0a7du3iyCOPjNGjR8emm25adv9Ro0bFU089Faeffnpd0o6BAwfG5ZdfHnfccUeMHDkyJk+eHF/4whdi9uzZZfV/7bXXYuTIkbHhhhvG2LFj46ijjopjjjkm/vGPf9Qpn5tuuik++OCD+MEPflB2n2HDhsW3vvWt6NevX7Rp0ya23nrrGDp0aAwePLjsMTp16hSDBg2KU045JaZOnRrV1dVx5ZVXxiOPPBLTpk2rwythWT77LPsDfIl5ODp0iFjaPDxvXn6fxx7L5oSI7FaIJ5+sWVy67bbsjUZExIYbRsydm91a/f772W0TW24ZMXNm9vyl884r7zW8/342Dyw+l1Tyurbf3m3WDclcsYi5wlzR1L3ySlZ0WW+97APuZb1/rW2uWHgeLudcvcUWES+/nG3rjTey7zffPOLVV7MPuP/4x/Jyf+aZ7EPyvPcd99+f3aK38cZZQey990rbmCsalrliEXNFE5wrCr1OqhG65pqUNt88pY8/zn7eZZdl30a3uL59S2+je/vt7Ja0hx+uGT/hhJS23z77/qqrstvslrTddtmlsyml9MEHKX372yn16ZPSF7+Y3Y738sspbbhhSjNmZJezrrtuSgcdlLWtzf77p7TE1XTpk0+yWwavuCL7+b778m+jSymlVVdN6fLLax+fyrz99tspItLDS+wgJ5xwQtp+4Q5Soajn5a5HHnlk6tu3b5oyZUpF/ebNm5deeeWV9MQTT6Rhw4albt26peeee66svm+++Wbq3r17evrppz+PVXq565JmzpyZOnfuXPYlt23atEmDBg2qEfvZz36Wdthhhzptf4899khf/epXK+pzzTXXpF69eqVrrrkmPfPMM+mf//xnWm211dLlFR50kyZNSl/84hdTRKTWrVun7bbbLg0ePDj169evonEo36BB2Zzx9tvZbWVXXJFSq1YpbbRR7X1+9avs9usnnkhpwYKUHn88ux0tIqWpUxe1++tfU2rTJqWVVsp+d+SRNce58cZs7lp//ezWiZSy8/yf/5zdUrHVVtltG9dfX3su48dnY7/5Zt1e17//ncWrq5f6z0QdmSsy5oqMuaLpuu22lK67Lrut7Y47snNsnz4pzZpVe59vfzu7Re7ll7Nz7J13ZrfELf7eoZxz9ciR2c8bbZR9n1JKu+2W0ujR2fyw2WbZfLG0O51Gj06pdetszlrcNddk88Azz2RtNtkkex+z5CM+fv7zlL70pWX/O1E35oqMuSLT1OaKZl1sevPNlLp3z07+CzWmYlOeL385pZtuyt6IfOUrKc2fn90zfdxxtffZY4+UfvrTmrGf/zylQw5Z9PPSik09e2b3ilOMefPmpdatW5ecxL///e+n/fbbr05j1mdSGDJkSOrVq1d67bXX6tR/cbvttls6/PDDy2o7evToz09gC78iIlVVVaXWrVunz8p5IFmOAQMGpGHDhpXVtk+fPulHP/pRjdj/+3//L/Xs2bPi7b7++uupVatW6aabbqqoX69evdJ5551XI3bKKaekjTfeuOIcUkrpo48+SlP/r2px8MEHp3322adO47BskyZlHwREZH+Ib7ddSoMHp7S0eXju3JR++MOsiNS6dXZ+PfHEbIx33sna3HdfVoC6+OLsj/gbb8ye7/eHP9Q+7v33pzRgQPaMvh49sp9ffDF7fsfizwpc3MMPZ9udPr1ur+vOO7M2c+cu85+KOjBXZMwVGXNF8zFzZnZuXtr71+nTsw+LW7XKzsMbbZT9Ld++/aI2dZmDLr88pQMOyOabLl2yYta992bzxief5Pe5+uqUVl552a/r1VezXO6+u2b8179e9P6H4pkrMuaKTFObK5r1bXRPPhkxfXrENttk91KvtFLEuHERf/tb9n11dd3G7dYte57F4ivLRWQ/r7VW9v1aa2W32y2++tuSbZZ02WURXbtmq8rdf3/EAQdkz+Y46KDs56XlM3Nmzdi990Zcf/2i173bbovaLrlqxPvvR6yxRu3jU5m2bdvGtttuG/fcc8/nsQULFsQ999xT8X3J9ZFSiqOPPjpGjx4d9957b6y77rr1HnPBggUxb968strutttuMXHixJgwYcLnXwMGDIjBgwfHhAkTonU5DyRbwkcffRSvvvpq9OjRo6z2O+20U8myrC+//HL07du34m1fdtll0b1799h3330r6jd37txotcR9rK1bt44FdVzma5VVVokePXrEzJkzY+zYsbH//vvXaRyWbf31sznjo48ipkxZdCvceuvV3qdDh+zZfXPnZqvGvflm9lymTp0WnWdPPjlbYvrHP85ug/j617Plpk8/PX/1t3nzIn7604gLL4yYNCm7vWKXXbLbGjbaqPbboBc+M2TJ+aHc1/X++xGrrJK9JopnrsiYKzLmiuaja9fs3DxpUu1t1lgj4qabIubMyW6Be/HFbHXqxc/Dlc5BM2ZE/P73Eeeem80LG22U3Zb95S9n/f7vES8lunXL5qz585f+utZbL2u75OvyPqJhmSsy5opMk5srCi1dNTKzZqU0cWLNrwEDUvrud7Pvy5F3ZVNKWQX/6KMX/VxdndLaa6e0cFGADz7IbpG44YZFbV58MftEIG/VuOnTs9XyFq4wsd9+Kf3lL9n3o0entLQH5591VunvJ02q+bovvXTR1ViLfwo+aVIWnzSp9vGp3KhRo1K7du3S5Zdfnp5//vl0+OGHp65du6Z3Fl7aUIbZs2en8ePHp/Hjx6eISOecc04aP358euONN8rqf9RRR6UuXbqk+++/P02bNu3zr7llXqYwbNiwNG7cuDR58uT0zDPPpGHDhqWqqqp05513lv0allTp5a6/+MUv0v33358mT56c/vOf/6Tdd989devWLU1f8lKNWjz22GNppZVWSqeeemp65ZVX0lVXXZVWXnnldOWVV1aUd3V1derTp0/65S9/WVG/lFI69NBD09prr53GjBmTJk+enG688cbUrVu3dOLSLnHMcccdd6Tbb789vfbaa+nOO+9M/fv3TwMHDkzz58+vOCfq5v33s0+KL7ywsn5f/GJ2y8RC22xTeoXr1Vdnt1DkfTB30kmLrm596qns1ueF+vfP5og81dXZp+vL+vCyttd10kkpFbzoCkswV+QzV5grmrLZs7Pz9F//Wn6f+fOz26Z/9ava2yxrDvrud1P629+y72+8Mbt9bqGuXbNbq/NMn569F6jt9wtNmZJSVVV2a93idt45my9oOOaKfOaKxj9XNOtiU55ybqObNy874Y4fn112evzx2fevvLKozahR2VKfl1+e0vPPp3T44dmJfPFj/sgjs3u27703e37HoEHZV57vfCelc89d9PMZZ6S07bbZ2HvvXXqb3OKeeSa7ZWPJ5UgXV9ttdJddltJ669Xej7o799xzU58+fVLbtm3T9ttvnx599NGK+t93330pIkq+Dj300LL65/WNiHTZZZeV1f+www5Lffv2TW3btk1rrLFG2m233eo1IaRU+aRwyCGHpB49eqS2bdumtddeOx1yyCFpUoWV0VtuuSVtvvnmqV27dqlfv37poosuqjDrlMaOHZsiIr300ksV9501a1Y69thjU58+fVL79u3Teuutl37zm9+kefPmVTTOtddem9Zbb73Utm3btNZaa6UhQ4akD5b2MDfq7Y47Urr99pReey27pax//5QGDsze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BGhePvroo5JY27Ztc9vW9oBwgKbOlU0AAAAAFEaxCQAAAIDCKDYBAAAAUBjFJgAAAAAKo9gEAAAAQGGsRlcHEydOzI2ff/75JbEbb7wxt+3//ve/QnNa3KOPPloSa9OmTW7bjTfeuCS2884757b961//mhuvbXUNgKYqbyWhiPyVRKuqqnLbnnjiibnxL33pS3XOqy5qW7k0bzW5+fPn57Y9++yzS2J5q6dGRBx22GG58a9+9au1ZAjQNE2dOjU3fskll5TEalsZeptttik0J4DGwpVNAAAAABRGsQkAAACAwig2AQAAAFAYxSYAAAAACqPYBAAAAEBhrEb3f5555pmSWN7qchER1157bW78ww8/LHt7vXr1yo1/4QtfKImts846uW3POuus3Pi2225bEvvvf/+b2/a9994rid122225bfv3758bP/LII3PjAE3VvHnzym77gx/8IDd+9NFHF5TN8nPaaaflxkeNGlUSmzx5cm7b2lZhtRod0Nz88Y9/XNEpNLhHHnmkJPbWW2+V3b+29w8bbbRRnXMCmgZXNgEAAABQGMUmAAAAAAqj2AQAAABAYRSbAAAAAChMi3tA+BFHHJEbHz16dEnsf//7X0Vj77777iWxLbbYIrdtbQ9hbd++fdnby3tgX0TEyJEjS2I//OEPc9tOmDChJLbWWmvltv3pT3+aG//GN75REltjjTVy2wI0BSeffHLZbQcOHNiAmTQOe+21V0ksb66JiHj00UcbOh2ARuHWW28tu+2Pf/zjBsykfEcddVRuvLbXMnPmzJLY3Llzy95e586dc+PHHXdcbryS+Rdo3FzZBAAAAEBhFJsAAAAAKIxiEwAAAACFUWwCAAAAoDCKTQAAAAAUplmsRvfJJ5+UxM4888zcthdffHFuPKVUEuvevXtu29pWcTjhhBNKYqusskpu2yK89957ufHPPvusJPb73/8+t+2ee+5ZEnv99dfrlRdAU/Haa6/lxt9+++3ceNeuXUtita062pzsuuuuJbHaVqMDaG5qW33t008/zY336tWrJPaDH/yg3nnk/Y0fEfHUU0/lxg844ICS2DvvvJPbNu+9UET+CtN5K3DXlsebb76Z2/bCCy/MjX//+98vifXt2ze3LdC4ubIJAAAAgMIoNgEAAABQGMUmAAAAAAqj2AQAAABAYRSbAAAAAChMs1iN7v777y+JnXXWWblta1tpYe211y6J3Xjjjbltt99++/KTq1B1dXVJbMqUKblt81ZriIjYd999S2IzZ86sX2IR8b3vfS83nrc6E0BTcOWVV+bGa1ul7pvf/GZJbMcddyw0JwAal0suuSQ3/u677+bGjzjiiHpvc+rUqSWxiy66KLftKaecUva4ee95Imr/O/+nP/1pSSxvtb3a7LfffrnxW2+9NTc+bdq0kpjV6KBpcmUTAAAAAIVRbAIAAACgMIpNAAAAABRGsQkAAACAwjSLB4R/9tlnJbHWrVtXNEabNm1KYv/9739z295www258RdffLHs7XXo0CE3/sILL5QVi4jo1q1bbvydd94pO488a665Zm78pJNOyo3n/dsBNAXXXHNNbry2hQ+OPfbYBswGgMZo/PjxFbXfcMMN673NP/7xjyWxCy64ILdtVVVVbny33XYriZ1zzjm5bTfffPMKsivfBhts0CDjAo2fK5sAAAAAKIxiEwAAAACFUWwCAAAAoDCKTQAAAAAURrEJAAAAgMI0i9Xo8lZa+PKXv5zb9q677sqNv/HGGyWxY445pn6JRcRKK+X/E+etoFepSlada9Uqv6544IEHlsT+9re/5bbt0aNH2dsDaMr69euXG995552XcyYArGhTp05tsLFffvnl3PioUaPKHuPwww/Pjf/1r38tibVt27bscRvStttumxvfZpttlnMmQENxZRMAAAAAhVFsAgAAAKAwik0AAAAAFEaxCQAAAIDCKDYBAAAAUJhmsRpdhw4dSmKjR4/ObfvBBx/kxkeMGFES+89//pPbdvXVV8+N9+nTpyQ2b9683LZPP/10bvy///1vbry+jjjiiNz4aaedVhLr2rVrg+QAsCLNmTOnJFbEyqAANG+zZs3KjaeUKornOffcc3Pjee9ZBg8enNt25MiRZW9vefvoo49y47Wt2N1YVssD6s+VTQAAAAAURrEJAAAAgMIoNgEAAABQGMUmAAAAAArTLB4QXonaHn6d94DwhvT9738/N17JA8I7d+6cGz/nnHNKYj/4wQ9y27Zu3brs7QE0Zddee21JbNKkSbltu3Xr1tDpNCk333xz2W3btGnTgJkALH9VVVWFxPNMnTq17DFqa9tY5OV3ySWX5Lb9xje+0dDpACuYK5sAAAAAKIxiEwAAAACFUWwCAAAAoDCKTQAAAAAURrEJAAAAgMK0uNXolrczzzwzNz5q1Kh6jz1y5Mjc+He+8516jw1Ay/Pkk0/mxm+55Zayxzj11FOLSgeg2bvoooty4w8//HBZsYiI0047LTd+xBFHlMRWX331CrKrzIEHHlgSW3nllXPb/uIXv2iwPIDGwZVNAAAAABRGsQkAAACAwig2AQAAAFAYxSYAAAAACqPYBAAAAEBhrEZXoEsuuaQk9sc//jG37aefflr2uJtvvnlu/Bvf+EbZYwDA4vJWnvvTn/6U2/aDDz4oie288865bffaa6965QWwIk2dOrUkNm3atAbbXm2rwz311FMlsf322y+37cknn5wbHzt2bElszJgxuW07deqUG89rX9v7m/Hjx5fETjrppNy2O+ywQ24caD5c2QQAAABAYRSbAAAAACiMYhMAAAAAhVFsAgAAAKAwHhBeB4899lhu/Be/+EVJbPbs2RWNnfdwvpEjR+a2bdeuXUVjA7Rk66yzTkmsc+fOyz+R5ay6ujo3fvbZZ5fERo0aldu2V69eZfWPiFhpJX9aAE1Xz549S2IbbbRRbts33ngjN37vvfeWxI444ojctiuvvHJuvEePHiWxxx9/PLdtbQ/93mSTTUpieQs+ROS/j4nIXwCptpzzHgZe28PLgebPlU0AAAAAFEaxCQAAAIDCKDYBAAAAUBjFJgAAAAAKo9gEAAAAQGEsGVMHt9xyS2581qxZZY+xyiqr5MZvvvnmktjOO+9c9rgA5Nt1111LYnmrDkVEfPjhh7nxGTNmlMS6detWv8Tq4JlnnimJ/b//9/9y2z711FO58dpWNcpz5ZVXlsQGDhxYdn+Apuzvf/97bnzffffNjd96660lsT322CO37XHHHZcbz1uNrjb//e9/c+OnnXZa2W1TSrnxjTfeuKxxIyK+/vWv15Yi0AK5sgkAAACAwig2AQAAAFAYxSYAAAAACqPYBAAAAEBhPCB8KWbPnp0bP/PMM+s99ne/+93c+Je+9KV6jw1A/bzwwgu58T333LMkVslDXIuS94DXvIeXL80aa6xREvva176W23a77baraGyA5qRXr1658TvuuCM3/uUvf7kk9sgjj+S2Peigg8rOo7aHeFdVVZU9Rm1++MMf5sbz3vesvvrq9d4e0Py5sgkAAACAwig2AQAAAFAYxSYAAAAACqPYBAAAAEBhFJsAAAAAKIzV6P7PRx99VBLbZJNNctvOnz+/7HH79++fG//LX/5S9hgANIzTTjstN37KKafkxp966qmGTKdeWrXK//yotlWDjjvuuJLYsGHDCs0JoDmrbTXSRx99tCR27bXX5radNGlSbvziiy8uif3oRz/KbVvb+T9PbWP069ev7DEAyuHKJgAAAAAKo9gEAAAAQGEUmwAAAAAojGITAAAAAIVRbAIAAACgMFaj+z/33ntvSeztt9+u97jnnHNObrx9+/b1HhuA+vn617+eGx84cGBufK+99iqJTZw4sdCcynH44YeXxLbeeuvctkceeWRDpwPAYrp27VoSO+KIIyoa46yzziooG4AVw5VNAAAAABRGsQkAAACAwig2AQAAAFAYxSYAAAAACuMB4f/n5JNPrvcYJ554Ykls1113rfe4ACxfPXv2zI0/88wzyzkTAABoelzZBAAAAEBhFJsAAAAAKIxiEwAAAACFUWwCAAAAoDCKTQAAAAAUxmp0/+f9998vu2337t1z40OHDi0oGwAAAICmSbEJAAAAGoFhw4bVqd+IESMKzgTqx210AAAAABRGsQkAAACAwig2AQAAAFAYxSYAAAAACuMB4f/nuOOOKysWEXHyySfnxnv06FFoTgAAAABNjSubAAAAACiMYhMAAAAAhVFsAgAAAKAwik0AAAAAFMYDwv/Pz3/+87JiAAAA0FwNGzasTv1GjBhRcCY0Za5sAgAAAKAwik0AAAAAFEaxCQAAAIDCeGYTAAAAQCNTl+dnNZZnZ9W52JRSioiIWbNmFZYMLM3CfW3hvre82NfLN3z48Dr1+/3vf19wJk3bRx/Vr2/erur4oaVorPt6fY7rhf0dRjS0xnr8QNEa874+b968Oo1d5PHTGHIo4n1FXcZY2L8h/h6vi7r8v2joc2m5x09VquMR9tZbb0Xv3r3r0hXqZcqUKdGrV6/ltj37Os2J44eWwr4Odef4oaWwr0PdLev4qXOxacGCBTF16tTo1KlTVFVV1TlBKFdKKWbPnh09e/aMVq2W3+PG6rOvz5o1K3r37h1TpkyJzp07V7zt+vaXgxwWaorHD9RFU9zXW/r5SQ6NJ4emePxAXTTFfb2ln5/k0HhyKPf4qfNtdK1atVquVWCIiOjSpcty32YR+3rnzp3rfCIpor8c5BDRdI8fqFRT3ddb8vlJDo0nh6Z6/EClmuq+3pLPT3JoPDmUc/xYjQ4AAACAwig2AQAAAFAYxSZoQO3atYvhw4dHu3btVkh/OcgBaPwaw7lBDnIAGrfGcG6QgxwqUecHhAMAAADAklzZBAAAAEBhFJsAAAAAKIxiEwDA/2/v3uNsKvcHjn+3YRjMIGOYwYxL5D6uI3TixOFI0g2VpKNy1CiTKOUUktx++lVuqVPkUsiJItdcpptyG7mVS4jDCCHD1Bgz398fz2/s2fbaZu09azDm83695pX57ud51rOnvdd3r+9e61kAAABwDMWmfOyll0T69PGvz803i/znP3kzH3iaNGmSVKlSRYoVKybNmzeX9evX+9X/yy+/lM6dO0tUVJS4XC5ZuHChX/1HjRolzZo1k9DQUImIiJC77rpLdu3aZbv/lClTpEGDBhIWFiZhYWHSokULWbp0qV9zyG706NHicrkkISHBdp9hw4aJy+Xy+KlVq5Zf2z18+LA89NBDUrZsWQkJCZH69evLxo0bbfevUqWK1xxcLpfEx8fb6p+RkSEvvfSSVK1aVUJCQqR69eoyYsQI8Xe5vJSUFElISJCYmBgJCQmRli1byoYNG/waA/jtN5GICJEDB+z3efttkc6d82xKBR65whO5glyBq6NnT5HXXrPf/vx5kSpVRPx4myAXyBWeyBX5I1cUyGJTSopIQoJITIxISIhIy5Yidv62kyaJ1K5t+tx0k8iMGZ6Pp6eLvPKKSPXqIsWKicTGiixb5tlm9myRypVFypQRGTDA87EDB0Rq1hQ5cybnuRw9KvLmmyJDhvj3vP71L5HBg0UyM3PeBgI3d+5cGTBggAwdOlQ2b94ssbGx0qFDBzl27JjtMc6dOyexsbEyadKkgOaQmJgo8fHx8t1338nKlSslPT1d2rdvL+fOnbPVv1KlSjJ69GjZtGmTbNy4UW677Tbp0qWL7Nixw++5bNiwQaZOnSoNGjTwu2/dunUlOTn54s/XX39tu++pU6ekVatWUqRIEVm6dKns3LlTxo8fL2XKlPFr7tm3v3LlShER6dq1q63+Y8aMkSlTpsjEiRPlxx9/lDFjxsjYsWNlwoQJtucgIvLYY4/JypUrZebMmbJt2zZp3769tGvXTg4fPuzXOPBt0iTzwblYMZHmzUVy+hy3Y4fIvfeaPi6XyBtvBDbun3+KxMeLlC0rUrKkGfPXX92Pnzxpij0lS4o0aiSSlOTZPz5eZPx4e89x5EiRLl3MfLIcPCjSqZNI8eKmEDVokMiFC+7He/cW2bxZ5Kuv7G0D9pErPJEryBX51eHDIg89ZPbjISEi9evnXISZPdscKxQvLhIZafa1v/3mfnz6dJNbsv8UK+Y5xv/8j9lvR0R454Hvvxdp0sRzf+7LDz+ILFki8vTTnvEffxS5806RUqVESpQQadbM5AwRkeBgkYEDRZ5/PufxkTvkCk/kinyUK7QA6tZNtU4d1cRE1T17VIcOVQ0LU/3vf333mTxZNTRUdc4c1Z9/Vv3oI9WSJVU/+8zd5rnnVKOiVD//3LSZPFm1WDHVzZvN48ePm9/nzFFdv161XDnVRYvc/Tt2VP3Pf+w9hxEjVDt08P95XbigWr686uLF9raDwMTFxWl8fPzF3zMyMjQqKkpHjRoV0HgiogsWLMjVnI4dO6YioomJiQGPUaZMGf33v//tV5+UlBStUaOGrly5Ulu3bq39+/e33Xfo0KEaGxvr3ySzef755/WWW24JuL+V/v37a/Xq1TUzM9NW+06dOmnv3r09Yvfcc4/26NHD9jZTU1M1KChIF1/yxm3cuLEOGTLE9jjwbc4c1eBg1fffV92xQ/Xxx1VLl1b99VfffdavVx040OSDChVU//d/Axu3b1/VypVVV61S3bhR9eabVVu2dD8+YIBq69aqu3apJiSoNmnifmzdOvP7hQs5P8dz50xOWLfOHbtwQbVePdV27VSTklSXLFEND1d94QXPvgMHqt53X87bgH/IFW7kCnJFfnXypGpMjOojj6h+/73qvn2qy5er7t3ru8/XX6sWKqT65pum/Vdfqdatq3r33e4206aZfXZysvvn6FH34z/8oBoSYnLHF1+YY4ytW81j6emqDRuaPGXHo4+q/vOfnrG9e1VvuEF10CBzLLN3r+qnn3rmr5MnTY7bvt3edhAYcoUbuSJ/5YoCd2bTH3+Yy8jGjhW59VaRG28UGTbM/HfKFN/9Zs4U+ec/Rbp3F6lWTeT++80lbGPGeLZ58UWR2283bZ54wvw765uGffvMNwPdu5tvBv76V/ONgYjIRx+JFCkics899p7HnDmelzXYfV5BQWZOc+bY2w78d/78edm0aZO0a9fuYqxQoULSrl07Wbdu3VWb1++//y4iIjfccIPffTMyMmTOnDly7tw5adGihV994+PjpVOnTh5/D3/s2bNHoqKipFq1atKjRw85mPWVmg2fffaZNG3aVLp27SoRERHSqFEjeffddwOah4j5fztr1izp3bu3uFwuW31atmwpq1atkt27d4uIyA8//CBff/21dOzY0fZ2L1y4IBkZGVLskq80Q0JC/PpGBr69/rrI44+L/OMfInXqmEvHihcXef99332aNRMZN87kg6JFAxv3999F3nvPtLvtNvMt9LRpIt9+K/Ldd6bNjz+abdSsafJOVt5ITxfp29eMGRSU83NcssTM8+ab3bEVK0R27hSZNUukYUORjh1FRowwZ2OdP+9u17mzyGefmVwDZ5ArPJEryBX51Zgx5qqFadNE4uJEqlYVad/eXOngy7p15gzTp5827W+5xRxnXHrmq8slUqGC+6d8efdjP/0k0qCByR1t25p///STeWzcOHM80KxZzvPPyBCZP9/7cukhQ8wxw9ix5qza6tXNWU4REe42ZcqItGrFcUVeIld4Ilfkr1xR4IpNFy6Yneqlp6GGhIhc7m+blmbdZ/1684H/cm2yxq1RQyQ11VwCcfKkucStQQORU6fM+ksTJ9p7DidPmoODpk0De15xcVwOkZdOnDghGRkZUj77JwIRKV++vBw9evSqzCkzM1MSEhKkVatWUq9ePdv9tm3bJiVLlpSiRYtK3759ZcGCBVKnTh3b/efMmSObN2+WUaNGBTJtad68uUyfPl2WLVsmU6ZMkf3798tf/vIXSUlJsdV/3759MmXKFKlRo4YsX75cnnjiCXn66aflgw8+CGg+CxculNOnT8sjjzxiu8/gwYPl/vvvl1q1akmRIkWkUaNGkpCQID169LA9RmhoqLRo0UJGjBghR44ckYyMDJk1a5asW7dOkpOTA3gmyO78eZFNm0Syf24pVMj8npvPcXbG3bTJ5JDsbWrVEomOdreJjRVZvdrs55cvN3lDxBwAtGnjmQsu56uvTDEru3XrzOUe2XdXHTqYy7mzn9netKnZ/vff29sWckaucCNXkCvys88+M/vIrl1NIaZRI5Gcjj9btBA5dMh8CaBqLp2eP98Ud7I7e9Ysj1G5srkEOvt+uX59kd27zWVtv/xi/l2vnsjPP5vC16uv2pv/1q3mi4/suSQzU+Tzz82XHB06mOfVvLmI1TI/HFfkLXKFG7kiH+YKR8+TyidatDCXJBw+bC4hmDnTnMpas6bvPi+8YC6T2LhRNTNTdcMGczmaiOqRI6bNAw+Yy9h271bNyFBdscKc3hoc7B7nk0/MJQvVq5vL3FRVe/c2l18kJppTXuvWVf34Y99zSUoy2z14MLDn9emnJp6RYevPBT8dPnxYRUS//fZbj/igQYM0Li4uoDEll6e79u3bV2NiYvTQoUN+9UtLS9M9e/boxo0bdfDgwRoeHq47duyw1ffgwYMaERGhP/zww8WYv6e7XurUqVMaFhZm+5TbIkWKaIsWLTxiTz31lN58880Bbb99+/Z6xx13+NXno48+0kqVKulHH32kW7du1RkzZugNN9yg06dP92ucvXv36q233qoiokFBQdqsWTPt0aOH1qpVy69x4O3wYbNPveQtq4MGqdp9y8bEeF9GZ2fc2bM9c0SWZs3MpdmqqqdPm/wSHa16663mcrzdu1Vr1FA9ccJc+lC1qmrXrqatL126mHyT3eOPq7Zv7xk7d87Me8kSz3iZMqp+vmxxGeQKg1xhkCvyr6JFzc8LL5jLzaZONZe05fS/bt48syRH4cJmn9u5s+r58+7Hv/1W9YMPzOf+tWtV77jDXFaX/e05ZYr5nF+zpvm3qmrbtqoLFphjibp1zbHF5a50WrBANSjIHN9kSU42cypeXPX1180cRo1SdbnMXLJ7803VKlVy/jshMOQKg1xh5LdcUSCLTXv3mg/sImbn2qyZao8eqpf726amqv7jHyYhBAWZtZmee86MkXX99LFj5sN8oUKmTc2aqk8+aRKOL2vXqjZtaj7cR0aa33/6ySQTX2uFfPut2e6xY4E9rxUrTJvU1Bz/VAhAWlqaBgUFee3EH374Yb3zzjsDGjM3SSE+Pl4rVaqk+/btC6h/dm3bttU+ffrYartgwYKLO7CsHxFRl8ulQUFBesHOIjMWmjZtqoMHD7bVNjo6Wh999FGP2OTJkzUqKsrv7R44cEALFSqkCxcu9KtfpUqVdOLEiR6xESNG6E033eT3HFRVz549q0f+v8LdrVs3vf322wMaB27XerHJyl//qrpwofmQ/7e/mQOUXr3M+k6+tG9vclJ2/hSboqLMWoRwBrnCIFcY5Ir8q0gR84Vvdk89Zdbf82XHDvO5f+xYs/bSsmWq9et7fyGQ3fnz5svqf/3Ld5vp01Xvusscm5QqZb6YWL3abOvPP637fPihKSpll5W/HnjAM965s+r993vG3nlHNSLC95yQO+QKg1xh5LdcUeAuoxMx1xwnJppTUw8dcl8KV62a7z4hIWaNjdRUc9e4gwfNtdahoSLlypk25cqZ00vPnTOns/70k7l7kK9x09JEnnxSZOpUkb17zSUKrVubO93VrOn7coXwcPPfU6cCe14nT5o7SoSE5PCHQkCCg4OlSZMmsmrVqouxzMxMWbVqld/XJeeGqkq/fv1kwYIFsnr1aqlatWqux8zMzJS0tDRbbdu2bSvbtm2TLVu2XPxp2rSp9OjRQ7Zs2SJBdhaZucTZs2fl559/lsjISFvtW7Vq5XVb1t27d0tMTIzf2542bZpERERIp06d/OqXmpoqhQp57mqDgoIkM8BbQpYoUUIiIyPl1KlTsnz5cunSpUtA48AtPNyseZT9DnAi5vcKFfJ23AoVzOV2p0/b3/a0aSKlS5tLKtauFbnrLrPmX9eu5vfLzefSvFGhgvX8sh7L7uRJd75D7pErDHKFQa7IvyIjzZp82dWu7b5rm5VRo8xaR4MGmUujO3QQmTzZHGv4uoqlSBFzid7evdaPnzghMny4yIQJ5hiiZk2zhMdf/2qOB/5/iRcv4eHm+Cb7On3h4SKFC9t7XuSGvEWuMMgVRn7LFYUdHS2fKVHC/Jw6ZdbBGDs25z5FiohUqmT+PWeOyB13mDU4sitWTKRiRbNj/89/RLp1sx7r1VdF/v53kcaNzTpO2W9Nmp5u1mCyUr26SFiYWbepZk3/n9f27SZZIe8MGDBAevXqJU2bNpW4uDh544035Ny5c/KPf/zD9hhnz56Vvdk+Uezfv1+2bNkiN9xwg0RHR+fYPz4+Xj788EP59NNPJTQ09OJ13aVKlZIQG5XGF154QTp27CjR0dGSkpIiH374oaxdu1aWL19ua/6hoaFe13GXKFFCypYta/v67oEDB0rnzp0lJiZGjhw5IkOHDpWgoCB54IEHbPV/5plnpGXLlvLaa69Jt27dZP369fLOO+/IO++8Y6t/lszMTJk2bZr06tVLChf2b7fZuXNnGTlypERHR0vdunUlKSlJXn/9dendu7df4yxfvlxUVW666SbZu3evDBo0SGrVquXXawrWgoPNWkarVpnCjYhZr2LVKpF+/fJ23CZNTF5ZtUrk3ntNbNcu82He6jPk8eMir7ziXosvI8O9buDl8oaI2e/PmuUZa9FCZORIkWPH3Iu+rlxpckz2g4yffxb5809yh9PIFeSKLOSK/KtVK7Pfzm73brPWki+pqaaYk13WsbKqdZ+MDJFt27zXdcryzDPmp1Ilsy5sVm4Qca/taqVhQ/PfnTvd/w4ONouL23leHFfkPXIFuSJLvssVjp4nlU8sW6a6dKm51eiKFaqxsarNm3teJ32pXbvMGki7d5vbmnbvbm4Hun+/u81336n+5z+qP/+s+uWXqrfdZtbROHXKe7wdO8x6G2fPmt9TU1XLllX9979VFy82137/97++53PPParPPhvY82rdWvWVV3yPDWdMmDBBo6OjNTg4WOPi4vS7777zq/+aNWtURLx+evXqZau/VV8R0WnTptnq37t3b42JidHg4GAtV66ctm3bVlesWOHXc7iUv9dWd+/eXSMjIzU4OFgrVqyo3bt3172Xu5ewhUWLFmm9evW0aNGiWqtWLX3nnXf8nLXq8uXLVUR0165dfvc9c+aM9u/fX6Ojo7VYsWJarVo1HTJkiKalpfk1zty5c7VatWoaHBysFSpU0Pj4eD19uQV64Jc5c8x+d/p01Z07Vfv0US1d2vM205dKSzPrWCQlmUsUBg40/96zx79x+/Y16zGtXm3WBWzRwvuSjCwPPqg6YYL79zFjVJs0MWN37Oh9mVx2W7eaS8FPnnTHLlww6wi2b6+6ZYvJI+XKmbVHsps2TbVaNd9jI3DkCm/kCnJFfrJ+vdm3jhxp9v+zZ5vL0mbN8t1n2jTTZ/Jkc9zw9ddmWY3sl24PH666fLl5fNMmc/lasWLmGOJSK1aYvlnrsR46ZNouWWLWkCpb9vLLZzRu7JlbVM06s0WKmMvk9uwxjwcFqX71lWe7mBjVGTMu9xeCE8gV3sgV136uKJDFprlzzYfm4GCz6Hd8/OUXVVU1H+QbNjQLfoeFmbWZfvrJs83ataq1a5sDi7JlVXv2NNc8XyozU7VVK9VFizzjixaZA47y5VXffffy81myRLViRc9Fvu08r//+1yQOP9dzA4Dr3oQJZh8cHGw+tOf0OW7/frOmxaU/rVv7N+4ff5giUZky5gDl7rvN4qyXWrbM82BC1ayv1LWramioWRTW11p/WeLiVN9+2zN24IApVIWEqIaHmy8y0tM927RvbxaHBQB4W7TIFO6LFjVrpdo5/nzrLXNjoZAQ84VFjx6eXzQnJLhzR/nyqrffbhYgv1RqqlknNinJM/7uu6ZfdLT5IvtyJk+2XmPqvfdUb7zRFK5iY81agdl9+635AoV1YAFYcan6OlkT1zJVcwvSZ54RsXnmn4iIPP+8ubzOz7P9AADXgc8/N2uEbN/ufQm4Lzt2iNx2m7l8olSpvJ0fAODK++MPs2bs3LnWl3D70r27SGysyIsv5t3cAORfBXrNpvzM5TIFo23b/OsXESEyYEDezAkAcG3r1Elkzx6Rw4dFKle21yc5WWTGDApNAHC9Cgkx+/kTJ+z3OX9epH5988U3AFjhzCYAAAAAAAA4xuZJ9AAAAAAAAEDOKDYBAAAAAADAMRSbAAAAAAAA4BiKTQAAAAAAAHAMxSYAAAAAAAA4hmITAAAAAAAAHEOxCQAAAAAAAI6h2AQAAAAAAADHUGwCAAAAAACAYyg2AQAAAAAAwDEUmwAAAAAAAOAYik0AAAAAAABwDMUmAAAAAAAAOIZiEwAAAAAAABxTONCOmZmZcuTIEQkNDRWXy+XknABLqiopKSkSFRUlhQpduTopr3VcD3j/oKDgtQ4EjvcPCgpe60Dg7L5/Ai42HTlyRCpXrhxodyBghw4dkkqVKl2x7fFax/WE9w8KCl7rQOB4/6Cg4LUOBC6n90/AxabQ0NCLGwgLCwt0GMC2M2fOSOXKlS++9q4UXuu40rZsEWndOrC+iYkiDRt6x3n/oKC4Vl/ruXlfi/h+bwNOulbfP4DTrufXel58jgSys/v+CbjYlHXaX1hYGEkBV9SVPuWU1zqutJIlc9f3ci9T3j8oKK6113pu3tdZ/XkL4Uq51t4/QF65Hl/refk5Esgup/cPC4QDAAAAAADAMRSbAAAAAAAA4BiKTQAAAAAAAHAMxSYAAAAAAAA4hmITAAAAAAAAHEOxCQAAAAAAAI6h2AQAAAAAAADHUGwCAAAAAACAYyg2AQAAAAAAwDEUmwAAAAAAAOAYik0AAAAAAABwDMUmAAAAAAAAOIZiEwAAAAAAABxDsQkAAAAAAACOodgEAAAAAAAAx1BsAgAAAAAAgGMoNgEAAAAAAMAxFJsAAAAAAADgGIpNAAAAAAAAcAzFJgAAAAAAADim8NWeAAAAAADg8oYNG2YZHz58uGW8TZs2XrE1a9Y4OCMA8I0zmwAAAAAAAOAYik0AAAAAAABwDMUmAAAAAAAAOIZiEwAAAAAAABzDAuEAAFxBp06d8oolJSVZtl22bJllfNy4cV4xl8tl2bZr166W8ZiYGK/Ys88+a9m2fPnylnEAwJWTmJjoV/u1a9faiolYLyYOALnBmU0AAAAAAABwDMUmAAAAAAAAOIZiEwAAAAAAABxDsQkAAAAAAACOodgEAAAAAAAAx3A3OgAAciE9Pd0yPn78eMv4xIkTvWLJycl+bdPqznO+7kY3f/582+OeOHHCMv7+++/bHgMAkDd83UnOiTG4Gx0Ap3FmEwAAAAAAABxDsQkAAAAAAACOodgEAAAAAAAAx1BsAgAAAAAAgGNYINxBSUlJXrGXXnrJsu2SJUss46rqFfO16GvXrl0t4yNHjvSKRUZGWrZds2aNV6xt27aWbUNCQizjAFCQTZ061TI+ZMiQPNum1UKuiYmJuR73gw8+sIyzQDgAXB+GDRt2tacAoIDgzCYAAAAAAAA4hmITAAAAAAAAHEOxCQAAAAAAAI6h2AQAAAAAAADHUGwCAAAAAACAY7gb3WWkp6dbxn3d8eeRRx7xiiUnJ1u29XWHOX/azp8/3zJudde4gwcPWrZdu3atV2zGjBmWbR966CEfMwSAgmH79u1esREjRuTZ9saMGWMZ79+/v1fs5Zdftmw7duxYR+cEAAAA5IQzmwAAAAAAAOAYik0AAAAAAABwDMUmAAAAAAAAOIZiEwAAAAAAABxDsQkAAAAAAACO4W50l7F582bLeIcOHWyPERUVZRmfOHGiZbx48eK2x/7ll19sj/HUU09Zti1atKhXLDIy0vYcAOB6ZHXXORGRF1980St2/Phxy7a+7iQaExPjFfvss88s29apU8cyXqiQ93dFr7zyimXbu+++2zJ+5513esV8PZcGDRp4xbZu3WrZFgCQN4YOHWoZHz58uO0xhg0b5lccAALFmU0AAAAAAABwDMUmAAAAAAAAOIZiEwAAAAAAABxDsQkAAAAAAACOYYHw/2e1GKzV4qmX065dO6/YqFGjLNs2btzYr7GtHDlyxDLepUsXr9jp06ct2z733HNesbZt2+ZqXgCQ3yUlJVnGFy9e7BVTVcu2RYoUsYzHx8d7xerVq+fH7Kz52l5cXJxl/JFHHvGKjR8/3rLttm3bvGJ9+vSxbPvOO+/4mCEAIDf8WQgcAK42zmwCAAAAAACAYyg2AQAAAAAAwDEUmwAAAAAAAOAYik0AAAAAAABwDMUmAAAAAAAAOIa70f2/V1991St2/Phxy7Z33HGHZdzqLj41atTI3cQuw+oOeiIimzdvtj3G3//+d6emAwDXjaVLl1rGXS6X7THatGljGX/22WcDmZLjRo8e7RXz9byt7ka3YcMGx+cEAACA6wNnNgEAAAAAAMAxFJsAAAAAAADgGIpNAAAAAAAAcAzFJgAAAAAAADiGYhMAAAAAAAAcU+DuRvf4449bxufNm+cVK1mypGVbqzv4iOTdnefS09Mt46NGjbKMq6pXzNddkVq3bh3wvAAgv/vtt98s499//32ux+7Zs2eux7jSfM35ueeeu8IzAQAAQH7GmU0AAAAAAABwDMUmAAAAAAAAOIZiEwAAAAAAABxDsQkAAAAAAACOKXALhG/cuNEy7nK5vGIlSpSwbFunTh1H55Sd1WLgL730kmXbL7/80jJu9Vxefvnl3E0MAK5DmzZtsowfOHDA9hi33nqrZbxTp06BTCnfOH36tGU8OTnZMh4ZGZmHswEAAMC1hDObAAAAAAAA4BiKTQAAAAAAAHAMxSYAAAAAAAA4hmITAAAAAAAAHEOxCQAAAAAAAI4pcHeju1b4utPR5MmTvWLjx4/3a+yoqCivWMOGDf0aAwAKAl93KPXH8OHDLeNlypTJ9djXsoMHD1rGt2/fbhnnbnQAcPUNGzbsak8BQAHBmU0AAAAAAABwDMUmAAAAAAAAOIZiEwAAAAAAABxDsQkAAAAAAACOodgEAAAAAAAAxxS4u9HVrl3bMr5161av2MmTJy3bNmrUKNfzOH78uGX8yJEjXjGXy+XX2G3btvWKlS5d2q8xAKAgSE1NtYyrqu0xWrdu7dR0rln+/D0AAAAAzmwCAAAAAACAYyg2AQAAAAAAwDEUmwAAAAAAAOAYik0AAAAAAABwTIFbIPy9996zjKekpHjFPv/8c8u2VouJO+Wzzz7zis2cOdOy7fz58y3jffv2dXROAHC92rhxo2Xc3xszXO+s/h78jQAAAOALZzYBAAAAAADAMRSbAAAAAAAA4BiKTQAAAAAAAHAMxSYAAAAAAAA4hmITAAAAAAAAHFPg7kYXEhJiGV+0aJFXbO3atZZtfd29yEqdOnUs47fffrtl/Mknn/SKffzxx5Ztb7rpJst49erVbc4OAIDAhIaGWsbLli17hWcCAACAaw1nNgEAAAAAAMAxFJsAAAAAAADgGIpNAAAAAAAAcAzFJgAAAAAAADiGYhMAAAAAAAAcU+DuRuePNm3a+BV3wttvv+0Vc7lclm2bNWtmGS9XrpyjcwIAFAwzZsyw3XbYsGGW8caNGzs0GwBAdr6OQXzdQduKr323rzgABIozmwAAAAAAAOAYik0AAAAAAABwDMUmAAAAAAAAOIZiEwAAAAAAABzDAuFXyYEDB2y3DQ0NtYwnJCQ4MxkAKKBGjx5tGd+yZYtl/Pjx416x3r17W7Z9//33A57X1WL1/EREIiIivGJ9+/bN6+kAAAAgn+LMJgAAAAAAADiGYhMAAAAAAAAcQ7EJAAAAAAAAjqHYBAAAAAAAAMdQbAIAAAAAAIBjuBvdVfLKK6/YbnvHHXdYxhs3buzUdACgQGrYsKFlfNy4cZbxXr16ecXmzZtn2bZfv36W8Wtl3/344497xX799VfLtt26dfOKFStWzPE5AQCMtWvX2ooBwLWKM5sAAAAAAADgGIpNAAAAAAAAcAzFJgAAAAAAADiGYhMAAAAAAAAcwwLheWz79u2W8U8++cT2GH//+9+dmg4AwIZWrVpZxh988EGv2IcffmjZNjEx0TJ+pRcIX716tWXcKg+VL1/esu3LL7/s6JwAAJc3fPjwqz0FAMgVzmwCAAAAAACAYyg2AQAAAAAAwDEUmwAAAAAAAOAYik0AAAAAAABwDMUmAAAAAAAAOIa70eWxpKQky/iZM2cs4y6XyytWrFgxR+cEALi8atWqWcZfffVVr9g333xj2dbXnYSOHz/uFXvttdf8mJ3I7t27vWLr16+3bDtgwADL+OnTp71iAwcOtGxbp04d+5MDANi2du1av+L+WLNmjVesTZs2uR4XAOzgzCYAAAAAAAA4hmITAAAAAAAAHEOxCQAAAAAAAI6h2AQAAAAAAADHUGwCAAAAAACAY7gbXR6zuuuQiPVd50RE6tWr5xW77777HJ0TACAwVapU8Yp9++23lm379u1rGZ88ebJXbOnSpX6N8fLLL3vFTpw4YdnWl86dO3vF+vTp49cYAIArZ+jQoZbxYcOGXdmJAIANnNkEAAAAAAAAx1BsAgAAAAAAgGMoNgEAAAAAAMAxFJsAAAAAAADgGBYIz2MzZ870q33Pnj3zaCYAgLwQGRlpGZ8xY4ZlfNeuXV6xESNGWLZ98sknLeMDBw60OTuRe++91zLeuHFjr1jhwnwsAIArqU2bNpZxVb2yEwEAh3FmEwAAAAAAABxDsQkAAAAAAACOodgEAAAAAAAAx1BsAgAAAAAAgGMoNgEAAAAAAMAx3HYmj9WuXdsyvnXr1is8EwDAlVSqVCnLeFxcnFds0aJFeT0dAAAA4IrhzCYAAAAAAAA4hmITAAAAAAAAHEOxCQAAAAAAAI6h2AQAAAAAAADHUGwCAAAAAACAY7gbXR7r2LGjZXzfvn2W8WbNmuXldAAAAAAAAPIUZzYBAAAAAADAMRSbAAAAAAAA4BiKTQAAAAAAAHAMxSYAAAAAAAA4hgXC81jPnj39igMAAAAAAORnnNkEAAAAAAAAx1BsAgAAAAAAgGMoNgEAAAAAAMAxFJsAAAAAAADgmIAXCFdVERE5c+aMY5MBLifrtZb12rtSeK3jSjt7Nnd9rV6qvH9QUFyrr/XcvK+z+vM2Ql67Vt8/gNOu59d6XnyOBLKz+/4JuNiUkpIiIiKVK1cOdAggICkpKVKqVKkruj0RXuvIH1q3vvzjvH9QUFxvr/Wc3tuAk6639w/gC691T+Qa+COn949LAyznZmZmypEjRyQ0NFRcLlfAEwTsUlVJSUmRqKgoKVToyl0BmpvX+pkzZ6Ry5cpy6NAhCQsL83vbue3PHJhDlvz4/gECkR9f6wV9/8Qcrp055Mf3DxCI/PhaL+j7J+Zw7czB7vsn4DObChUqJJUqVQq0OxCQK/nNQxYnXuthYWEB70ic6M8cmINI/n3/AP7Kr6/1grx/Yg7Xzhzy6/sH8Fd+fa0X5P0Tc7h25mDn/cMC4QAAAAAAAHAMxSYAAAAAAAA4hmITkIeKFi0qQ4cOlaJFi16V/syBOQC49l0L+wbmwBwAXNuuhX0Dc2AO/gh4gXAAAAAAAADgUpzZBAAAAAAAAMdQbAIAAAAAAIBjKDYBAAAAAADAMRSbrhPnz4vceKPIt9/a77Nzp0ilSiLnzuXdvAqySZMmSZUqVaRYsWLSvHlzWb9+vV/9v/zyS+ncubNERUWJy+WShQsX+tV/1KhR0qxZMwkNDZWIiAi56667ZNeuXbb7T5kyRRo0aCBhYWESFhYmLVq0kKVLl/o1h+xGjx4tLpdLEhISbPcZNmyYuFwuj59atWr5td3Dhw/LQw89JGXLlpWQkBCpX7++bNy40Xb/KlWqeM3B5XJJfHy8rf4ZGRny0ksvSdWqVSUkJESqV68uI0aMEH+Xy0tJSZGEhASJiYmRkJAQadmypWzYsMGvMYDffhOJiBA5cMB+n7ffFuncOc+mVOCRKzyRK8gVuPo4rrj2kCs8kSvyR6647otNKSkiCQkiMTEiISEiLVuK5PR3TE4WefBBkZo1RQoVMv2tfPyxSK1aIsWKidSvL7JkiefjqiIvvywSGWm23a6dyJ497sfT0kR69hQJCzPb+uILz/7jxok89ZS95/n22yJVq5rnl2XzZpG//U2kdGmRsmVF+vQROXvW/XidOiI33yzy+uv2tgH75s6dKwMGDJChQ4fK5s2bJTY2Vjp06CDHjh2zPca5c+ckNjZWJk2aFNAcEhMTJT4+Xr777jtZuXKlpKenS/v27eWczU8BlSpVktGjR8umTZtk48aNctttt0mXLl1kx44dfs9lw4YNMnXqVGnQoIHffevWrSvJyckXf77++mvbfU+dOiWtWrWSIkWKyNKlS2Xnzp0yfvx4KVOmjF9zz779lStXiohI165dbfUfM2aMTJkyRSZOnCg//vijjBkzRsaOHSsTJkywPQcRkccee0xWrlwpM2fOlG3btkn79u2lXbt2cvjwYb/GgW+TJolUqWL26c2bi+T0OW7HDpF77zV9XC6RN94IbNw//xSJjzf76ZIlzZi//up+/ORJU+wpWVKkUSORpCTP/vHxIuPH23uOI0eKdOli5pPl4EGRTp1Eihc3hahBg0QuXHA/3ru3ySdffWVvG7CPXOGJXEGuuNZ9+aXZH0dFmf2+neP16+W4YuRI83vx4ubY4lIcV+QdcoUnckU+yhV6nevWTbVOHdXERNU9e1SHDlUNC1P9739999m/X/Xpp1U/+EC1YUPV/v2923zzjWpQkOrYsao7d6r+61+qRYqobtvmbjN6tGqpUqoLF6r+8IPqnXeqVq2q+scf5vG33lKtXVt1+3bVceNUy5VTzcw0j+3bp1qjhurvv+f8HDMzTduPPnLHDh9WLVNGtW9f1Z9+Ul2/XrVlS9V77/Xsu3ixamSkanp6ztuBfXFxcRofH3/x94yMDI2KitJRo0YFNJ6I6IIFC3I1p2PHjqmIaGJiYsBjlClTRv/973/71SclJUVr1KihK1eu1NatW2t/qzeUD0OHDtXY2Fj/JpnN888/r7fcckvA/a30799fq1evrplZb9YcdOrUSXv37u0Ru+eee7RHjx62t5mamqpBQUG6ePFij3jjxo11yJAhtseBb3PmqAYHq77/vuqOHaqPP65aurTqr7/67rN+verAgWbfW6GC6v/+b2Dj9u2rWrmy6qpVqhs3qt58s9lfZxkwQLV1a9Vdu1QTElSbNHE/tm6d+f3ChZyf47lzJv+tW+eOXbigWq+eart2qklJqkuWqIaHq77wgmffgQNV77sv523AP+QKN3IFuSI/WLJEdcgQ1U8+URVRtfN2ux6OK1RVX35Z9fXXTU4qVcq6L8cVeYNc4UauyF+54rouNqWmmh33JX9HbdzYJAo7Wre2Tgrduql26uQZa95c9Z//NP/OzDQHH+PGuR8/fVq1aFH3zvuJJ1Sff949VxHVY8fM7x06mERmx4YNqoUKqZ45445NnaoaEaGakeGObd1qtrFnjzuWlmbm9MUX9raFnKWlpWlQUJDXTvzhhx/WO++8M6AxnUgKe/bsURHRbdk/udh04cIF/eijjzQ4OFh37NjhV9+HH35YExISVFUDSgrFixfXyMhIrVq1qj744IP6yy+/2O5fu3ZtTUhI0Pvuu0/LlSunDRs21Hfeecev+WeXlpamZcuW1ZEjR9ruM3LkSI2JidFdu3apquqWLVs0IiJCZ82aZXuMM2fOqIjoF5e8UVu1aqWtW7e2PQ58i4tTzfY5TjMyVKOiVO1+jouJsS425TTu6dPmgOLjj91tfvzR7KuzikIdO6pOmWL+vXOnavHi5t/nz6vGxpocYMfHH5uDj+yWLDH54+hRd2zKFFOUSktzxxITTdEsNdXetpAzcoUncgW5Ir+xW2zKLr8eV2Q3bZrvYhPHFc4jV3giV+SvXHFdX0Z34YJIRoY5HTW7kBARP86Ys7RunTl9NbsOHUxcRGT/fpGjRz3blCplLqHIahMba+bxxx8iy5eb02LDw0VmzzZzvvtue3P56itzumxoqDuWliYSHGxO180SEmL+m/25BweLNGzI5RFOOnHihGRkZEj58uU94uXLl5ejR49elTllZmZKQkKCtGrVSurVq2e737Zt26RkyZJStGhR6du3ryxYsEDq1Klju/+cOXNk8+bNMmrUqECmLc2bN5fp06fLsmXLZMqUKbJ//375y1/+IikpKbb679u3T6ZMmSI1atSQ5cuXyxNPPCFPP/20fPDBBwHNZ+HChXL69Gl55JFHbPcZPHiw3H///VKrVi0pUqSINGrUSBISEqRHjx62xwgNDZUWLVrIiBEj5MiRI5KRkSGzZs2SdevWSXJycgDPBNmdPy+yaZPn/rpQIfN71v46r8bdtEkkPd2zTa1aItHRnrli9WqT05YvF8k6a3zsWJE2bUSaNrU3n6++EmnSxDO2bp25XCP77qpDB5EzZ8xlglmaNjXb//57e9tCzsgVbuQKckVBd60fV9jFcYXzyBVu5Ir8lysKOzraNSY0VKRFC5ERI0Rq1zYfpj/6yOyUb7wxd2MfPer54VzE/J71ns/67+Xa9O4tsnWrucY5PFxk3jyRU6fM9dhr14r8618ic+aIVK8u8v77IhUrWs/ll1/MtePZ3XabyIAB5vrs/v3NYn2DB5vHLn0NRUWZMXD9io+Pl+3bt/t1XbKIyE033SRbtmyR33//XebPny+9evWSxMREW4nh0KFD0r9/f1m5cqUUu7Tia1PHjh0v/rtBgwbSvHlziYmJkXnz5smjjz6aY//MzExp2rSpvPbaayIi0qhRI9m+fbu8/fbb0qtXL7/n895770nHjh0l6tI33GXMmzdPZs+eLR9++KHUrVtXtmzZIgkJCRIVFeXXHGbOnCm9e/eWihUrSlBQkDRu3FgeeOAB2bRpk9/PA55OnDBfTFjtr3/6KW/HPXrUfDi/dP2L7Lli8GCRJ54wuaBKFZH33jPrdHzwgclnffuKrFhhCkLvvmsOQKxY5QpfuSzrsSzFi5txyRXXN3IFuQJXx7V+XOEPjiuuf+QKcoVd1/WZTSIiM2eaBfUqVhQpWlTkrbdEHnjA84yfq6VIEbNw7P79ZtHyW24RefZZkaefNgvALlwo8sMPZrG9p5/2Pc4ff3ifvVW3rjkQGT/eHCRUqGAW+itf3vu5h4SIpKY6/vQKrPDwcAkKCpJfs6/wKyK//vqrVKhQ4YrPp1+/frJ48WJZs2aNVKpUya++wcHBcuONN0qTJk1k1KhREhsbK2+++aatvps2bZJjx45J48aNpXDhwlK4cGFJTEyUt956SwoXLiwZGRl+P5fSpUtLzZo1Ze/evbbaR0ZGeiWw2rVry8GDB/3e9i+//CJffPGFPPbYY371GzRo0MVvIerXry89e/aUZ555xu9vZapXry6JiYly9uxZOXTokKxfv17S09OlWrVqfo2D/KdUKZEPPzQf3hMTzYHEP/9pvkyYPVtk3z6RXbvMvv6VV3yPY5Ur/EGucBa5wiBXGOQK5FZeHlf4g1zhLHKFQa4w8luuuAZKLnmrenXz4fzsWZFDh8xdgNLTRXL7d6xQwfNuQSLm96z3fNZ/L9fmUmvWmMsW+vUz30DcfrtIiRIi3bqZ330JDzffXFzqwQfNtx2HD5vbXQ8bJnL8uPdzP3lSpFw53+PDP8HBwdKkSRNZtWrVxVhmZqasWrVKWrRoccXmoarSr18/WbBggaxevVqqVq2a6zEzMzMlLS3NVtu2bdvKtm3bZMuWLRd/mjZtKj169JAtW7ZIUFCQ39s/e/as/PzzzxIZGWmrfatWrbxuy7p7926JiYnxe9vTpk2TiIgI6dSpk1/9UlNTpdAlFd6goCDJzMz0ew4iIiVKlJDIyEg5deqULF++XLp06RLQOHALDxcJCvJvf+3UuBUqmMvtTp+2v+1p08yZUF26mNxw113mIKNrV/9zha9clvVYduQKZ5ErDHKFQa4o2PLDcYVd5ApnkSsMcoWR73KFoytA5QMnT5pF7aZOtdf+cgv53XGHZ6xFC++F/P7nf9yP//6750J+2f3xh7mDxObN5vennzZ3HVI1dwjytRCfqln0tUwZ9x0nfHnvPbOw7KlTnvFKlVT9vBEAcjBnzhwtWrSoTp8+XXfu3Kl9+vTR0qVL69Hsq/DmICUlRZOSkjQpKUlFRF9//XVNSkqyvZDdE088oaVKldK1a9dqcnLyxZ9Umyv8Dh48WBMTE3X//v26detWHTx4sLpcLl2xYoXt53Apfxfye/bZZ3Xt2rW6f/9+/eabb7Rdu3YaHh6ux7JWvMzB+vXrtXDhwjpy5Ejds2ePzp49W4sXL+7XInqq5q4f0dHR+nzWypt+6NWrl1asWFEXL16s+/fv108++UTDw8P1ueee82ucZcuW6dKlS3Xfvn26YsUKjY2N1ebNm+v58+f9nhO8xcWp9uvn/j0jQ7ViRWcWCL/cuFkLhM+f727z00+eC4Rnd+yYapUq7juq3nmn6htvmH8vWGAWDPdl3Djvx7MWCM9+d7ypU80C4X/+6Y7t3WvmtHev7/HhP3KFNXIFuSI/cHqB8PxyXHG5BcJVOa7IC+QKa+SKaz9XXPfFpmXLVJcuNbf8XLHCfNBu3tzcxedykpLMT5Mmqg8+aP6dfbH8b75RLVzY7PR//FF16FDrW5SWLq366afmTnBdunjeojS7F19UffZZ9+9z56pGR5tbmz76qOrtt/ue64kT3ttWVZ0wQXXTJnO77IkTVUNCVN9807PN/v2qLpfqgQOX/3vAfxMmTNDo6GgNDg7WuLg4/e677/zqv2bNGhURr59evXrZ6m/VV0R02rRptvr37t1bY2JiNDg4WMuVK6dt27bNVUJQ9T8pdO/eXSMjIzU4OFgrVqyo3bt3171+Hu0uWrRI69Wrp0WLFtVatWoFdNeI5cuXq4hcvPODP86cOaP9+/fX6OhoLVasmFarVk2HDBmiadlv9WXD3LlztVq1ahocHKwVKlTQ+Ph4PX36tN/zgbU5c8yH9unTzR3f+vQx++/LfY5LS3PnishI1YEDzb+z3/HTzrh9+5r9/erVqhs3mgOMFi2st/ngg2bfnmXMGJOndu40d6178knf89261eStkyfdsQsXVOvVU23fXnXLFpMzy5VTfeEFz77TpqlWq+Z7bASOXOGNXEGuuFalpLj3+yKqr79u/p3T8fr1cFzxyy9m3sOHq5Ys6X5OKSnuNhxX5B1yhTdyxbWfK677YtPcueYDcnCw+UYgPt58k5wTs9KT509MjGebefNUa9Y0Y9etq/r5556PZ2aqvvSSavny5mCjbVtT+LnUtm2qN96oevasO5aRYW5hGham2qyZ58GLlW7dVAcP9oz17Kl6ww1mfg0aqM6Y4d3vtdfM7VABoKCbMMF8GA8ONmck5fQ5bv9+61xx6V1jcxr3jz9MkahMGXP26d13qyYne29v2TLTPyPDHTt3TrVrV9XQUJNjsp+hZCUuTvXttz1jBw6YQlVIiGp4uDlASU/3bNO+vf2zvADgerVmjfV+P6fj9evhuKJXL+vnsWaNuw3HFQCyc6mqOnthHq6GrVtF/vY3kZ9/FilZ0l6f8+dFatQwC8+2apW38wMAXH2ffy4yaJDI9u32b5SxY4e5w+nu3b7vdAcAuH5wXAHACdf9AuEFRYMGImPGmDtQ2HXwoMiLL5IQAKCg6NRJpE8fc+MIu5KTRWbMoNAEAAUFxxUAnMCZTQAAAAAAAHAMZzYBAAAAAADAMRSbAAAAAAAA4BiKTQAAAAAAAHAMxSYAAAAAAAA4hmITAAAAAAAAHEOxCQAAAAAAAI6h2AQAAAAAAADHUGwCAAAAAACAYyg2AQAAAAAAwDEUmwAAAAAAAOCY/wPCJ5QWj654mAAAAABJRU5ErkJggg==",
      "text/plain": [
       "<Figure size 1200x1000 with 30 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "num_rows = 5\n",
    "num_cols = 3\n",
    "num_images = num_rows*num_cols\n",
    "plt.figure(figsize=(2*2*num_cols, 2*num_rows))\n",
    "for i in range(num_images):\n",
    "  plt.subplot(num_rows, 2*num_cols, 2*i+1)\n",
    "  plot_image(i, predictions[i], test_labels, test_images)\n",
    "  plt.subplot(num_rows, 2*num_cols, 2*i+2)\n",
    "  plot_value_array(i, predictions[i], test_labels)\n",
    "plt.tight_layout()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "WARNING:absl:Found untraced functions such as _update_step_xla while saving (showing 1 of 1). These functions will not be directly callable after loading.\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "INFO:tensorflow:Assets written to: ./mnist_checkpoint/assets\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "INFO:tensorflow:Assets written to: ./mnist_checkpoint/assets\n"
     ]
    }
   ],
   "source": [
    "# print(model.summary())\n",
    "model.save('./mnist_checkpoint/')"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.10.9"
  },
  "orig_nbformat": 4,
  "vscode": {
   "interpreter": {
    "hash": "ee21c858e9e6cc3714526aa083051029b46bcc72805c0fea5b8193e35926ec97"
   }
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
